packages feed

matterhorn 50200.7.0 → 50200.8.0

raw patch · 72 files changed

+13914/−8815 lines, 72 filesdep +network-uridep ~aspell-pipedep ~base-compatdep ~brick

Dependencies added: network-uri

Dependency ranges changed: aspell-pipe, base-compat, brick, mattermost-api, mattermost-api-qc, semigroups, skylighting-core

Files

CHANGELOG.md view
@@ -1,4 +1,60 @@ +50200.8.0+=========++New features:+ * Support for Personal Access Tokens and OAuth tokens was added. To+   take advantage of this feature, paste either type of token in the+   new "Access Token" field of the login user interface or set up the+   new `tokencmd` configuration file setting. See the "Authentication"+   section of the README for help and see `docs/sample-config.ini` for+   documentation on `tokencmd`. Thanks to @ftilde for early work on this+   feature!+ * The attribute used to render the current user's username can now be+   customized. By default the attribute still uses the same color as+   before (chosen based on the username) but is bold. The new theme+   attribute `currentUser` can be customized just like other attributes;+   for details, see `/help themes`.+ * The `focus-next-unread` (default: `M-a`) and+   `focus-next-unread-user-or-channel` (default: no binding) events can+   now be repeatedly triggered to cycle through channels with unread+   activity and then return to the original channel where you started,+   which is now marked with `~` in the channel sidebar.+ * Matterhorn got a new `--check-config` argument that triggers a+   configuration file validation check (thanks @glguy).+ * The Matterhorn login user interface was greatly improved and+   simplified. Now, instead of providing individual fields for server+   hostname and port, the user interface provides a single "Server URL"+   field that is capable of accepting server hostnames with or without+   ports as well as full Mattermost web client browser URLs, complete+   with team names and URL paths. This adds support for servers that run+   at URL paths other than "/" and auto-detects teams in URLs to improve+   the web client user's migration experience. As part of this change,+   the configuration got a new setting, `urlPath`, that corresponds to+   the URL path of the server URL in the login interface. Thanks, @glguy+   and @immindich!++Other improvements:+ * The XML syntax highlighting descriptions were updated.+ * Channels with unread join or leave messages now appear as unread in+   the sidebar as intended.+ * The format-specific command-line options for markdown and plain text+   for generated command and keybinding tables were merged. The old+   interface was:++   * `-k`/`-K` to output configured keybindings in plain and markdown+     formats, respectively+   * `-m`/`-M` to output commands in plain and markdown formats,+     respectively++   And the new interface is:++   * `-f` to set the output format (default: plain)+   * `-k` to output configured keybindings in the active format+   * `-m` to output commands in the active format+ * The macOS example notification script was improved (thanks Geir+   Skjotskift)+ 50200.7.0 ========= 
README.md view
@@ -35,15 +35,71 @@     $ matterhorn --help     $ matterhorn -When you run Matterhorn you'll be prompted for your server information-and credentials. At present `matterhorn` supports only username/password-authentication.+When you run Matterhorn you'll be prompted for your server URL and+credentials. To connect, just paste your web client's Mattermost URL+into the Server URL box and enter your credentials. See the next section+on the details for providing each kind of supported credentials.  Note: Version `ABBCC.X.Y` matches Mattermost server version `A.BB.CC`. For example, if your Mattermost server version is `3.6.0` then you would download matterhorn version `30600.2.4`. See [Our Versioning Scheme](#our-versioning-scheme) for details. +# Authentication++`matterhorn` supports username/password authentication as well as+authentication by Personal Access Token or session token. The following+subsections provide details on using each method.++## Username / Password Authentication++Matterhorn's start-up login user interface will allow you to provide+a username and password for authentication. We recommend that you+put the username in your Matterhorn configuration file and configure+Matterhorn to obtain your password from your system keychain. See the+`docs/sample-config.ini` file for documentation on the `user` and+`passcmd` settings, respectively.++## Personal Access Token Authentication++Matterhorn's start-up login user interface will also allow you to+provide an session or Personal Access Token. If a token is provided, it+will take precedence over a username and password.++We recommend Personal Access Tokens because they don't expire except+when revoked. To use a Personal Access Token:++* Ask your Mattermost server administrator to enable Personal Access+  Tokens on your Mattermost account.+* Create a Personal Access Token.+* Add the new token to your system keychain. (Details on how to do this+  depend on your platform.)+* Configure Matterhorn's `tokencmd` configuration option to query the+  system keychain to get the token. See `docs/sample-config.ini` for+  examples of how to do this with `passcmd` and `tokencmd`.++The steps for configuring Personal Access Tokens can be found in [the+Mattermost documentation](https://docs.mattermost.com/developer/personal-access-tokens.html).++## Token Cookie Authentication++If your server does not support username and password authentication+(e.g. if GitLab authentication is the only supported method), you can+use your browser client's token cookie to authenticate:++* Authenticate to GitLab (or other identity provider) using the+  Mattermost web client.+* Once your browser has returned to the Mattermost interace, obtain the+  value of the `MMAUTHTOKEN` browser cookie.+* Start Matterhorn and enter the value of the `MMAUTHTOKEN` token in the+  login interface field labeled `Access token:` or add the token to the+  system keychain as described above.++Please note that unlike a Personal Access Token, the web client's token+cookie will expire, so these steps will need to be repeated each time+you log in with Matterhorn. As a result, we strongly recommend the use+of a Personal Access Token instead if at all possible.+ # Configuring  For configuration options you have two choices:@@ -79,14 +135,14 @@  * The `/help` command within Matterhorn. * The `F1` key within Matterhorn.-* Running matterhorn with the `-k` argument to get a text table of available keybindings.-* Running matterhorn with the `-K` argument to get a [Markdown table of available keybindings](docs/keybindings.md).-* Running matterhorn with the `-M` argument to get a [Markdown table of available commands](docs/commands.md).+* Running matterhorn with the `-k` or `-m` arguments to get a text table of available keybindings or commands respectively.+* Running matterhorn with the `-k` or `-m` arguments with `-f markdown` to get a [Markdown table of available keybindings](docs/keybindings.md) or [Markdown table of available commands](docs/commands.md). -    Note: The latter three commands do not start the client but simply-    print to stdout and exit. The keybindings shown include any user-    overrides from the config files; use the `-i` flag to skip loading-    the local config files and see the Matterhorn default keybindings.+    Note: The keyboard and command output commands do not start the+    client but simply print to stdout and exit. The keybindings shown+    include any user overrides from the config files; use the `-i`+    flag to skip loading the local config files and see the Matterhorn+    default keybindings.  Keybindings may include modifiers such as Control (indicated with a `C-` prefix) or Meta (indicated with a `M-` prefix). If your keyboard@@ -131,7 +187,11 @@ the channel list with a "`<`" indicator.  To switch to the next channel with unread messages, use the default-binding `M-a`.+binding `M-a`. Pressing `M-a` repeatedly will visit other channels with+unread messages, and the channel you started in when first pressing+`M-a` will be marked with `~` in the sidebar. Pressing `M-a` will return+to that channel after other channels with unread messages have been+visited.  To quickly show a list of URLs mentioned in the current channel and then open one in your local browser, use the default binding of `C-o` and@@ -167,6 +227,8 @@ * Markdown rendering * Convenient URL-opening with local browser * Secure password entry via external command (e.g. OSX keychain)+* Secure authentication token entry via external command (e.g. OSX+  keychain) * Yank verbatim content from messages into the system clipboard * Optional live preview during message editing * Optional smart quoting for efficient Markdown entry@@ -293,6 +355,9 @@ If you decide to contribute, that's great! Here are some guidelines you should consider to make submitting patches easier for all concerned: + - Please base all patches against the `develop` branch unless you are+   specifically fixing a bug in a released version, in which case+   `master` is a fine place to start.  - If you want to take on big things, let's have a design/vision    discussion before you start coding. Create a GitHub issue and we can    use that as the place to hash things out. We'll be interested to@@ -307,10 +372,14 @@  ## Does matterhorn support Gitlab authentication? -No. But we would be happy to work with contributors who are interested-in investigating what this would take and/or implementing it. See the-Contributing section for details.+Matterhorn supports GitLab authentication indirectly. In order to use+Matterhorn with GitLab authentication, see the Authentication section on+Matterhorn details for use of session tokens. +## Does matterhorn support Mattermost Personal Access Tokens?++Yes. See the Authentication section above.+ ## How can I get Matterhorn to render emphasized Markdown text with an italic font?  In `~/.config/matterhorn/theme.ini`,@@ -352,3 +421,23 @@ terminal emulators. Results may vary, and use of emoji characters may cause terminal rendering issues depending on the terminal emulator in use.++## I'm running Matterhorn in Tmux. How can I paste tmux buffers into Matterhorn's editor?++By default, `tmux`'s `paste-buffer` binding, `prefix-]`, pastes buffer+text by replaying it as terminal input. This will cause unwanted+behavior when Matterhorn receives that text and sends out each input+line as a separate message. But `tmux` supports bracketed paste mode+to make a `tmux` paste a block of text as *one* Matterhorn message.+It can be enabled by changing the behavior of `prefix-]` in the Tmux+configuration:++```+unbind-key -T prefix ]+bind-key -T prefix ] paste-buffer -p+```++## I'm using Mattermost through an Nginx proxy and I keep getting disconnected.++You might need to adjust your Nginx proxy settings.+For context, see [this potentially related report](https://github.com/matterhorn-chat/matterhorn/issues/578).
docs/commands.md view
@@ -18,7 +18,7 @@ | `/join <~channel>` | Join the specified channel | | `/leave` | Leave the current channel | | `/left` | Focus on the previous channel |-| `/log-mark <log marking message>` | Add marker message to the current log |+| `/log-mark <message>` | Add a custom marker message to the Matterhorn log | | `/log-snapshot <path>` | Dump the current log buffer to the specified path | | `/log-start <path>` | Begin logging to the specified path | | `/log-status` | Show current logging status |
docs/keybindings.md view
@@ -25,7 +25,7 @@ | `C-o` | `enter-url-open` | Select and open a URL posted to the current channel | | `M-s` | `focus-last-channel` | Change to the most recently-focused channel | | `C-n` | `focus-next-channel` | Change to the next channel in the channel list |-| `M-a` | `focus-next-unread` | Change to the next channel with unread messages |+| `M-a` | `focus-next-unread` | Change to the next channel with unread messages or return to the channel marked '~' | | `C-p` | `focus-prev-channel` | Change to the previous channel in the channel list | | `M-k` | `invoke-editor` | Invoke *$EDITOR* to edit the current message | | `PgUp` | `page-up` | Page up in the channel message list (enters message select mode) |
matterhorn.cabal view
@@ -1,5 +1,5 @@ name:                matterhorn-version:             50200.7.0+version:             50200.8.0 synopsis:            Terminal client for the Mattermost chat system description:         This is a terminal client for the Mattermost chat                      system. Please see the README for a list of@@ -12,7 +12,7 @@ category:            Chat build-type:          Simple cabal-version:       >= 1.18-tested-with:         GHC == 7.10.3, GHC == 8.0.1, GHC == 8.2.2, GHC == 8.4.4, GHC == 8.6.3+tested-with:         GHC == 8.0.2, GHC == 8.2.2, GHC == 8.4.4, GHC == 8.6.5, GHC == 8.8.3  data-files:          syntax/*.xml                      syntax/language.dtd@@ -41,6 +41,7 @@   hs-source-dirs:      src   main-is:             Main.hs   other-modules:       Config+                       Config.Schema                        Command                        Connection                        App@@ -134,49 +135,50 @@                        ScopedTypeVariables,                        NoImplicitPrelude   ghc-options:         -Wall -threaded -with-rtsopts=-I0 -Wcompat-  build-depends:       base                 >=4.8     && <5-                     , mattermost-api       == 50200.4.0-                     , base-compat          >= 0.9    && < 0.11-                     , unordered-containers >= 0.2    && < 0.3-                     , containers           >= 0.5.7  && < 0.7-                     , data-clist           >= 0.1.2  && < 0.2-                     , semigroups           >= 0.18   && < 0.19-                     , connection           >= 0.2    && < 0.4-                     , text                 >= 1.2    && < 1.3-                     , bytestring           >= 0.10   && < 0.11-                     , stm                  >= 2.4    && < 2.6+  build-depends:       base                 >=4.8      && <5+                     , mattermost-api       == 50200.5.0+                     , base-compat          >= 0.9     && < 0.12+                     , unordered-containers >= 0.2     && < 0.3+                     , containers           >= 0.5.7   && < 0.7+                     , data-clist           >= 0.1.2   && < 0.2+                     , semigroups           >= 0.18    && < 0.20+                     , connection           >= 0.2     && < 0.4+                     , text                 >= 1.2     && < 1.3+                     , bytestring           >= 0.10    && < 0.11+                     , stm                  >= 2.4     && < 2.6                      , config-ini           >= 0.2.2.0 && < 0.3-                     , process              >= 1.4    && < 1.7-                     , microlens-platform   >= 0.3    && < 0.5-                     , brick                >= 0.52   && < 0.53-                     , brick-skylighting    >= 0.2    && < 0.4-                     , vty                  >= 5.28   && < 5.29-                     , word-wrap            >= 0.4.0  && < 0.5-                     , transformers         >= 0.4    && < 0.6-                     , text-zipper          >= 0.10   && < 0.11-                     , time                 >= 1.6    && < 2.0-                     , xdg-basedir          >= 0.2    && < 0.3-                     , filepath             >= 1.4    && < 1.5-                     , directory            >= 1.3    && < 1.4+                     , process              >= 1.4     && < 1.7+                     , microlens-platform   >= 0.3     && < 0.5+                     , brick                >= 0.52.1  && < 0.53+                     , brick-skylighting    >= 0.2     && < 0.4+                     , vty                  >= 5.28    && < 5.29+                     , word-wrap            >= 0.4.0   && < 0.5+                     , transformers         >= 0.4     && < 0.6+                     , text-zipper          >= 0.10    && < 0.11+                     , time                 >= 1.6     && < 2.0+                     , xdg-basedir          >= 0.2     && < 0.3+                     , filepath             >= 1.4     && < 1.5+                     , directory            >= 1.3     && < 1.4                      , vector               < 0.13-                     , strict               >= 0.3    && < 0.4-                     , hashable             >= 1.2    && < 1.4-                     , cheapskate           >= 0.1    && < 0.2-                     , utf8-string          >= 1.0    && < 1.1-                     , temporary            >= 1.2    && < 1.4-                     , gitrev               >= 1.3    && < 1.4-                     , Hclip                >= 3.0    && < 3.1-                     , mtl                  >= 2.2    && < 2.3-                     , aspell-pipe          >= 0.3    && < 0.4-                     , stm-delay            >= 0.1    && < 0.2+                     , strict               >= 0.3     && < 0.4+                     , hashable             >= 1.2     && < 1.4+                     , cheapskate           >= 0.1     && < 0.2+                     , utf8-string          >= 1.0     && < 1.1+                     , temporary            >= 1.2     && < 1.4+                     , gitrev               >= 1.3     && < 1.4+                     , Hclip                >= 3.0     && < 3.1+                     , mtl                  >= 2.2     && < 2.3+                     , aspell-pipe          >= 0.4     && < 0.5+                     , stm-delay            >= 0.1     && < 0.2                      , unix                 >= 2.7.1.0 && < 2.7.3.0-                     , skylighting-core     >= 0.7    && < 0.9+                     , skylighting-core     >= 0.8     && < 0.9                      , timezone-olson       >= 0.1.7   && < 0.2                      , timezone-series      >= 0.1.6.1 && < 0.2                      , aeson                >= 1.2.3.0 && < 1.5                      , async                >= 2.2     && < 2.3                      , uuid                 >= 1.3     && < 1.4                      , random               >= 1.1     && < 1.2+                     , network-uri          >= 2.6     && < 2.7   default-language:    Haskell2010  test-suite test_messages@@ -196,41 +198,41 @@                     , ScopedTypeVariables   ghc-options:        -Wall -fno-warn-orphans -Wcompat   hs-source-dirs:     src, test-  build-depends:      base                 >=4.7     && <5-                    , base-compat          >= 0.9    && < 0.11-                    , brick                >= 0.52   && < 0.53-                    , bytestring           >= 0.10   && < 0.11-                    , cheapskate           >= 0.1    && < 0.2-                    , checkers             >= 0.4    && < 0.6+  build-depends:      base                 >=4.7      && <5+                    , base-compat          >= 0.9     && < 0.12+                    , brick                >= 0.52.1  && < 0.53+                    , bytestring           >= 0.10    && < 0.11+                    , cheapskate           >= 0.1     && < 0.2+                    , checkers             >= 0.4     && < 0.6                     , config-ini           >= 0.2.2.0 && < 0.3-                    , connection           >= 0.2    && < 0.4-                    , containers           >= 0.5.7  && < 0.7-                    , directory            >= 1.3    && < 1.4-                    , filepath             >= 1.4    && < 1.5-                    , hashable             >= 1.2    && < 1.4-                    , Hclip                >= 3.0    && < 3.1-                    , mattermost-api       == 50200.4.0-                    , mattermost-api-qc    == 50200.4.0-                    , microlens-platform   >= 0.3    && < 0.5-                    , mtl                  >= 2.2    && < 2.3-                    , process              >= 1.4    && < 1.7-                    , quickcheck-text      >= 0.1    && < 0.2-                    , stm                  >= 2.4    && < 2.6-                    , strict               >= 0.3    && < 0.4-                    , string-conversions   >= 0.4    && < 0.5-                    , tasty                >= 0.11   && < 1.3-                    , tasty-hunit          >= 0.9    && < 0.12-                    , tasty-quickcheck     >= 0.8    && < 0.12-                    , text                 >= 1.2    && < 1.3-                    , text-zipper          >= 0.10   && < 0.11-                    , time                 >= 1.6    && < 2.0-                    , timezone-olson       >= 0.1.7  && < 0.2+                    , connection           >= 0.2     && < 0.4+                    , containers           >= 0.5.7   && < 0.7+                    , directory            >= 1.3     && < 1.4+                    , filepath             >= 1.4     && < 1.5+                    , hashable             >= 1.2     && < 1.4+                    , Hclip                >= 3.0     && < 3.1+                    , mattermost-api       == 50200.5.0+                    , mattermost-api-qc    == 50200.5.0+                    , microlens-platform   >= 0.3     && < 0.5+                    , mtl                  >= 2.2     && < 2.3+                    , process              >= 1.4     && < 1.7+                    , quickcheck-text      >= 0.1     && < 0.2+                    , stm                  >= 2.4     && < 2.6+                    , strict               >= 0.3     && < 0.4+                    , string-conversions   >= 0.4     && < 0.5+                    , tasty                >= 0.11    && < 1.3+                    , tasty-hunit          >= 0.9     && < 0.12+                    , tasty-quickcheck     >= 0.8     && < 0.12+                    , text                 >= 1.2     && < 1.3+                    , text-zipper          >= 0.10    && < 0.11+                    , time                 >= 1.6     && < 2.0+                    , timezone-olson       >= 0.1.7   && < 0.2                     , timezone-series      >= 0.1.6.1 && < 0.2-                    , transformers         >= 0.4    && < 0.6-                    , Unique               >= 0.4    && < 0.5-                    , unordered-containers >= 0.2    && < 0.3+                    , transformers         >= 0.4     && < 0.6+                    , Unique               >= 0.4     && < 0.5+                    , unordered-containers >= 0.2     && < 0.3                     , vector               <  0.13-                    , vty                  >= 5.28   && < 5.29-                    , xdg-basedir          >= 0.2    && < 0.3-                    , semigroups           >= 0.18   && < 0.19-                    , uuid                 >= 1.3    && < 1.4+                    , vty                  >= 5.28    && < 5.29+                    , xdg-basedir          >= 0.2     && < 0.3+                    , semigroups           >= 0.18    && < 0.20+                    , uuid                 >= 1.3     && < 1.4
notification-scripts/notify view
@@ -56,5 +56,5 @@ if [ ! -z "$urgency" ] then     test "$urgency" = "none" ||-        notify-send -u "$urgency" -c "$notify_CATEGORY" "$notify_HEAD" "$notify_BODY"+        notify-send -u "$urgency" -c "$notify_CATEGORY" -- "$notify_HEAD" "$notify_BODY" fi
src/Command.hs view
@@ -176,8 +176,8 @@     NoArg $ \ () ->         stopLogging -  , Cmd "log-mark" "Add marker message to the current log"-    (LineArg "log marking message") $ \ markMsg ->+  , Cmd "log-mark" "Add a custom marker message to the Matterhorn log"+    (LineArg "message") $ \ markMsg ->         mhLog LogUserMark markMsg    , Cmd "log-status" "Show current logging status"
src/Config.hs view
@@ -5,8 +5,8 @@   ( Config(..)   , PasswordSource(..)   , findConfig-  , getCredentials   , defaultConfig+  , configConnectionType   ) where @@ -15,8 +15,7 @@  import           Control.Monad.Trans.Except import           Control.Monad.Trans.Class ( lift )-import           Control.Monad.IO.Class ( liftIO )-import           Data.Ini.Config+import           Config.Schema import qualified Data.Map.Strict as M import qualified Data.Text as T import qualified Data.Text.IO as T@@ -24,6 +23,7 @@ import           System.Environment ( getExecutablePath ) import           System.FilePath ( (</>), takeDirectory, splitPath, joinPath ) import           System.Process ( readProcess )+import           Network.Mattermost.Types (ConnectionType(..))  import           FilePaths import           IOUtil@@ -71,6 +71,7 @@     configHost           <- fieldMbOf "host" stringField     configTeam           <- fieldMbOf "team" stringField     configPort           <- fieldDefOf "port" number (configPort defaultConfig)+    configUrlPath        <- fieldMbOf "urlPath" stringField     configChannelListWidth <- fieldDefOf "channelListWidth" number                               (configChannelListWidth defaultConfig)     configCpuUsagePolicy <- fieldDefOf "cpuUsagePolicy" cpuUsagePolicy@@ -104,9 +105,11 @@       (configActivityBell defaultConfig)     configHyperlinkingMode <- fieldFlagDef "hyperlinkURLs"       (configHyperlinkingMode defaultConfig)-    configPass <- (Just . PasswordCommand <$> field "passcmd") <|>-                  (Just . PasswordString  <$> field "pass") <|>+    configPass <- (Just . PasswordCommand <$> field "passcmd") <!>+                  (Just . PasswordString  <$> field "pass") <!>                   pure Nothing+    configToken <- (Just . TokenCommand  <$> field "tokencmd") <!>+                  pure Nothing     configUnsafeUseHTTP <-       fieldFlagDef "unsafeUseUnauthenticatedConnection" False     configValidateServerCertificate <-@@ -152,13 +155,13 @@         "multiple" -> return MultipleCPUs         _ -> Left $ "Invalid CPU usage policy value: " <> show t -stringField :: Text -> Either String Text+stringField :: Text -> Either e Text stringField t =     case isQuoted t of         True -> Right $ parseQuotedString t         False -> Right t -filePathField :: Text -> Either String FilePath+filePathField :: Text -> Either e FilePath filePathField t = let path = T.unpack t in Right path  parseQuotedString :: Text -> Text@@ -182,7 +185,9 @@            , configHost                        = Nothing            , configTeam                        = Nothing            , configPort                        = defaultPort+           , configUrlPath                     = Nothing            , configPass                        = Nothing+           , configToken                       = Nothing            , configTimeFormat                  = Nothing            , configDateFormat                  = Nothing            , configTheme                       = Nothing@@ -211,14 +216,19 @@            , configDefaultAttachmentPath       = Nothing            } -findConfig :: Maybe FilePath -> IO (Either String Config)+findConfig :: Maybe FilePath -> IO (Either String ([String], Config)) findConfig Nothing = runExceptT $ do     cfg <- lift $ locateConfig configFileName-    fixupPaths =<< case cfg of-        Nothing -> return defaultConfig+    (warns, config) <-+      case cfg of+        Nothing -> return ([], defaultConfig)         Just path -> getConfig path+    config' <- fixupPaths config+    return (warns, config') findConfig (Just path) =-    runExceptT $ fixupPaths =<< getConfig path+    runExceptT $ do (warns, config) <- getConfig path+                    config' <- fixupPaths config+                    return (warns, config')  -- | Fix path references in the configuration: --@@ -255,7 +265,7 @@          return $ c { configSyntaxDirs = newDirs } -getConfig :: FilePath -> ExceptT String IO Config+getConfig :: FilePath -> ExceptT String IO ([String], Config) getConfig fp = do     absPath <- convertIOException $ makeAbsolute fp     t <- (convertIOException $ T.readFile absPath) `catchE`@@ -274,8 +284,8 @@      case parseIniFile t' fromIni of         Left err -> do-            throwE $ "Unable to parse " ++ absPath ++ ":" ++ err-        Right conf -> do+            throwE $ "Unable to parse " ++ absPath ++ ":" ++ fatalString err+        Right (warns, conf) -> do             actualPass <- case configPass conf of                 Just (PasswordCommand cmdString) -> do                     let (cmd:rest) = T.unpack <$> T.words cmdString@@ -285,23 +295,23 @@                 Just (PasswordString pass) -> return $ Just pass                 Nothing -> return Nothing -            return conf { configPass = PasswordString <$> actualPass-                        , configAbsPath = Just absPath-                        }+            actualToken <- case configToken conf of+                Just (TokenCommand cmdString) -> do+                    let (cmd:rest) = T.unpack <$> T.words cmdString+                    output <- convertIOException (readProcess cmd rest "") `catchE`+                              (\e -> throwE $ "Could not execute token command: " <> e)+                    return $ Just $ T.pack (takeWhile (/= '\n') output)+                Just (TokenString _) -> error $ "BUG: getConfig: token in the Config was already a TokenString"+                Nothing -> return Nothing --- | Returns the hostname, username, and password from the config. Only--- returns Just if all three have been provided. The idea is that if--- this returns Nothing, we're missing at least some of these values.-getCredentials :: Config -> Maybe ConnectionInfo-getCredentials config = do-    pass <- configPass config-    passStr <- case pass of-        PasswordString p -> return p-        PasswordCommand _ ->-            error $ "BUG: unexpected credentials state: " <>-                    show (configPass config)+            let conf' = conf+                  { configPass = PasswordString <$> actualPass+                  , configToken = TokenString <$> actualToken+                  , configAbsPath = Just absPath+                  }+            return (map warningString warns, conf') -    ConnectionInfo <$> configHost config-                   <*> (pure $ configPort config)-                   <*> configUser config-                   <*> (pure passStr)+configConnectionType :: Config -> ConnectionType+configConnectionType config+  | configUnsafeUseHTTP config = ConnectHTTP+  | otherwise = ConnectHTTPS (configValidateServerCertificate config)
+ src/Config/Schema.hs view
@@ -0,0 +1,203 @@+{- |++This module provides an INI schema validator that is able to track unused+sections and fields in order to report warning messages to the user.+++ -}+module Config.Schema+  ( IniParser+  , parseIniFile+  , (<!>)++  , Fatal(..)+  , fatalString++  , Warning(..)+  , warningString++  , section+  , sectionMb+  , fieldMbOf+  , fieldMb+  , field+  , fieldDefOf+  , fieldFlagDef++  -- * Re-exports+  , number+  , string+  , listWithSeparator+  ) where++import           Prelude ()+import           Prelude.MH++import           Data.Map (Map)+import qualified Data.Map as Map+import           Data.List.NonEmpty (NonEmpty)+import qualified Data.List.NonEmpty as NonEmpty+import qualified Data.Text as T+import           Control.Monad+import           Data.Ini.Config (flag, number, listWithSeparator, string)+import           Data.Ini.Config.Raw+++------------------------------------------------------------------------++newtype Parser e t a = Parser { unParser :: e -> Map NormalizedText (NonEmpty t) -> Either Fatal (Map NormalizedText (NonEmpty t), [Warning], a) }++instance Functor (Parser e t) where+  fmap = liftM++instance Applicative (Parser e t) where+  pure x = Parser $ \_ s -> Right (s, [], x)+  (<*>) = ap++instance Monad (Parser e t) where+  m >>= f = Parser $ \e s0 ->+              do (s1, ws1, x1) <- unParser m e s0+                 (s2, ws2, x2) <- unParser (f x1) e s1+                 Right (s2, ws1++ws2, x2)++++(<!>) :: Parser e t a -> Parser e t a -> Parser e t a+p <!> q = Parser $ \e s ->+  case unParser p e s of+    Right r -> Right r+    Left {} -> unParser q e s++getenv :: Parser e t e+getenv = Parser $ \e s -> Right (s, [], e)++request :: Text -> Parser e t (Maybe t)+request name = Parser $ \_ s ->+  let name' = normalize name in+  Right $!+  case Map.lookup name' s of+    Nothing                 -> (s , [], Nothing)+    Just (x NonEmpty.:| xs) -> (s', [], Just x)+      where+        s' = case NonEmpty.nonEmpty xs of+               Nothing -> Map.delete name' s+               Just ne -> Map.insert name' ne s++fatal :: Fatal -> Parser e t a+fatal e = Parser $ \_ _ -> Left e++warnings :: [Warning] -> IniParser ()+warnings ws = Parser $ \_ s -> Right (s, ws, ())++------------------------------------------------------------------------++type IniParser = Parser RawIni IniSection++type SectionParser = Parser IniSection IniValue++data Fatal+  = NoSection Text+  | MissingField IniSection Text+  | BadField IniSection IniValue String+  | ParseError String+  deriving Show++data Warning+  = UnusedSection IniSection+  | UnusedField IniSection IniValue+  deriving Show++------------------------------------------------------------------------++fatalString :: Fatal -> String+fatalString (NoSection name) = "No top-level section named " ++ show name+fatalString (MissingField sec name) = "Missing field " ++ show name ++ " in section " ++ show (isName sec)+fatalString (BadField sec val err) =+  "Line " ++ show (vLineNo val) +++  " in section " ++ show (isName sec) +++  ": " ++ err+fatalString (ParseError err) = err++warningString :: Warning -> String+warningString (UnusedSection sec) = "Unused section " ++ show (isName sec)+warningString (UnusedField sec val) =+  "Line " ++ show (vLineNo val) +++  " in section " ++ show (isName sec) +++  ": unused field"++------------------------------------------------------------------------++parseIniFile :: Text -> IniParser a -> Either Fatal ([Warning], a)+parseIniFile text parser =+  case parseRawIni text of+    Left e -> Left (ParseError e)+    Right ini ->+      let entries = Map.fromListWith (<>)+                       [ (k, pure v) | (k,v) <- toList (fromRawIni ini) ]+      in+      case unParser parser ini entries of+        Left e -> Left e+        Right (entries', ws, x) -> Right (ws ++ unused, x)+          where+            unused = [ UnusedSection e | e <- concatMap toList entries' ]++------------------------------------------------------------------------++section :: Text -> SectionParser a -> IniParser a+section name parser =+  do mb <- sectionMb name parser+     case mb of+       Nothing -> fatal (NoSection name)+       Just x  -> pure x++sectionMb :: Text -> SectionParser a -> IniParser (Maybe a)+sectionMb name parser =+  do mb <- request name+     case mb of+       Nothing -> pure Nothing+       Just sec ->+         let entries = Map.fromListWith (<>)+                       [ (k, pure v) | (k,v) <- toList (isVals sec) ]+         in+         case unParser parser sec entries of+           Left e -> fatal e+           Right (entries', ws, result) ->+             do warnings (ws ++ [ UnusedField sec v | v <- concatMap toList entries' ])+                pure (Just result)++------------------------------------------------------------------------++field :: Text -> SectionParser Text+field name =+  do mb <- fieldMb name+     case mb of+       Just x -> pure x+       Nothing ->+         do s <- getenv+            fatal (MissingField s name)++fieldMbOf :: Text -> (Text -> Either String a) -> SectionParser (Maybe a)+fieldMbOf name validate =+  do mb <- request name+     case mb of+       Nothing -> pure Nothing+       Just val ->+         case validate (getVal val) of+           Left e ->+             do sec <- getenv+                fatal (BadField sec val e)+           Right x -> pure (Just x)++fieldMb :: Text -> SectionParser (Maybe Text)+fieldMb name = fmap getVal <$> request name++fieldDefOf :: Text -> (Text -> Either String a) -> a -> SectionParser a+fieldDefOf name validate def = fromMaybe def <$> fieldMbOf name validate++fieldFlagDef :: Text -> Bool -> SectionParser Bool+fieldFlagDef name def = fieldDefOf name flag def++------------------------------------------------------------------------++getVal :: IniValue -> Text+getVal = T.strip . vValue
src/Draw/Autocomplete.hs view
@@ -48,6 +48,7 @@         footer = case renderAutocompleteFooterFor curChan =<< selElem of             Just w -> hBorderWithLabel w             _ -> hBorder+        curUser = myUsername st      in if numResults == 0        then emptyWidget@@ -60,7 +61,7 @@            render $ translateBy (Location (0, rowOffset)) $                     vBox [ hBorderWithLabel label                          , vLimit visibleHeight $-                           renderList renderAutocompleteAlternative True matchList+                           renderList (renderAutocompleteAlternative curUser) True matchList                          , footer                          ] @@ -83,18 +84,18 @@                 ] renderAutocompleteFooterFor _ _ = Nothing -renderAutocompleteAlternative :: Bool -> AutocompleteAlternative -> Widget Name-renderAutocompleteAlternative sel (EmojiCompletion e) =+renderAutocompleteAlternative :: Text -> Bool -> AutocompleteAlternative -> Widget Name+renderAutocompleteAlternative _ sel (EmojiCompletion e) =     padRight Max $ renderEmojiCompletion sel e-renderAutocompleteAlternative sel (SpecialMention m) =+renderAutocompleteAlternative _ sel (SpecialMention m) =     padRight Max $ renderSpecialMention m sel-renderAutocompleteAlternative sel (UserCompletion u inChan) =-    padRight Max $ renderUserCompletion u inChan sel-renderAutocompleteAlternative sel (ChannelCompletion inChan c) =+renderAutocompleteAlternative curUser sel (UserCompletion u inChan) =+    padRight Max $ renderUserCompletion curUser u inChan sel+renderAutocompleteAlternative _ sel (ChannelCompletion inChan c) =     padRight Max $ renderChannelCompletion c inChan sel-renderAutocompleteAlternative _ (SyntaxCompletion t) =+renderAutocompleteAlternative _ _ (SyntaxCompletion t) =     padRight Max $ txt t-renderAutocompleteAlternative _ (CommandCompletion n args desc) =+renderAutocompleteAlternative _ _ (CommandCompletion n args desc) =     padRight Max $ renderCommandCompletion n args desc  renderSpecialMention :: SpecialMention -> Bool -> Widget Name@@ -125,8 +126,8 @@        txt $        autocompleteAlternativeReplacement $ EmojiCompletion e -renderUserCompletion :: User -> Bool -> Bool -> Widget Name-renderUserCompletion u inChan selected =+renderUserCompletion :: Text -> User -> Bool -> Bool -> Widget Name+renderUserCompletion curUser u inChan selected =     let usernameWidth = 18         fullNameWidth = 25         padTo n a = hLimit n $ vLimit 1 (a <+> fill ' ')@@ -143,7 +144,7 @@                              txt $ userNotInChannelMarker <> " "     in maybeForce $        hBox [ memberDisplay-            , padTo usernameWidth $ colorUsername username ("@" <> username)+            , padTo usernameWidth $ colorUsername curUser username ("@" <> username)             , padTo fullNameWidth $ txt fullName             , txt nickname             ]
src/Draw/ChannelList.hs view
@@ -45,6 +45,7 @@                          , entryHasUnread   :: Bool                          , entryMentions    :: Int                          , entryIsRecent    :: Bool+                         , entryIsReturn    :: Bool                          , entryIsCurrent   :: Bool                          , entryUserStatus  :: Maybe UserStatus                          }@@ -56,9 +57,9 @@         teamHeader = hCenter $                      withDefAttr clientEmphAttr $                      txt $ "Team: " <> teamNameStr-        myUsername = MM.userUsername $ myUser st+        myUsername_ = myUsername st         selfHeader = hCenter $-                     colorUsername myUsername (userSigil <> myUsername)+                     colorUsername myUsername_ myUsername_ (userSigil <> myUsername_)         teamNameStr = sanitizeUserText $ MM.teamDisplayName $ st^.csMyTeam         body = case appMode st of             ChannelSelect ->@@ -76,7 +77,7 @@                 vBox $                 teamHeader :                 selfHeader :-                (renderChannelListGroup st (\s e -> renderChannelListEntry $ mkChannelEntryData s e) <$>+                (renderChannelListGroup st (\s e -> renderChannelListEntry myUsername_ $ mkChannelEntryData s e) <$>                     Z.toList (st^.csFocus))  renderChannelListGroupHeading :: ChannelListGroup -> Bool -> Widget Name@@ -108,12 +109,13 @@                    -> ChannelListEntry                    -> ChannelListEntryData mkChannelEntryData st e =-    ChannelListEntryData sigilWithSpace name unread mentions recent current status+    ChannelListEntryData sigilWithSpace name unread mentions recent ret current status     where         cId = channelListEntryChannelId e         Just chan = findChannelById cId (st^.csChannels)         unread = hasUnread' chan         recent = isRecentChannel st cId+        ret = isReturnChannel st cId         current = isCurrentChannel st cId         (name, normalSigil, addSpace, status) = case e of             CLChannel _ ->@@ -140,10 +142,10 @@  -- | Render an individual Channel List entry (in Normal mode) with -- appropriate visual decorations.-renderChannelListEntry :: ChannelListEntryData -> (Bool, Widget Name)-renderChannelListEntry entry = (entryHasUnread entry, body)+renderChannelListEntry :: Text -> ChannelListEntryData -> (Bool, Widget Name)+renderChannelListEntry myUName entry = (entryHasUnread entry, body)     where-    body = decorate $ decorateRecent entry $ decorateMentions $ padRight Max $+    body = decorate $ decorateEntry entry $ decorateMentions $ padRight Max $            entryWidget $ entrySigil entry <> entryLabel entry     decorate = if | entryIsCurrent entry ->                       visible . forceAttr currentChannelNameAttr@@ -154,7 +156,7 @@                   | otherwise -> id     entryWidget = case entryUserStatus entry of                     Just Offline -> withDefAttr clientMessageAttr . txt-                    Just _       -> colorUsername (entryLabel entry)+                    Just _       -> colorUsername myUName (entryLabel entry)                     Nothing      -> txt     decorateMentions       | entryMentions entry > 9 =@@ -174,16 +176,28 @@                       else id         entryData = mkChannelEntryData st entry     in (False, maybeSelect $-               decorateRecent entryData $+               decorateEntry entryData $                padRight Max $                  hBox [ txt $ entrySigil entryData <> preMatch                       , forceAttr channelSelectMatchAttr $ txt inMatch                       , txt postMatch                       ]) --- | If this channel is the most recently viewed channel (prior to the--- currently viewed channel), add a decoration to denote that.-decorateRecent :: ChannelListEntryData -> Widget n -> Widget n-decorateRecent entry = if entryIsRecent entry-                       then (<+> (withDefAttr recentMarkerAttr $ str "<"))-                       else id+-- If this channel is the return channel, add a decoration to denote+-- that.+--+-- Otherwise, if this channel is the most recently viewed channel (prior+-- to the currently viewed channel), add a decoration to denote that.+decorateEntry :: ChannelListEntryData -> Widget n -> Widget n+decorateEntry entry =+    if entryIsReturn entry+    then (<+> (withDefAttr recentMarkerAttr $ str returnChannelSigil))+    else if entryIsRecent entry+         then (<+> (withDefAttr recentMarkerAttr $ str recentChannelSigil))+         else id++recentChannelSigil :: String+recentChannelSigil = "<"++returnChannelSigil :: String+returnChannelSigil = "~"
src/Draw/Main.hs view
@@ -255,6 +255,7 @@                           , mdThreadState       = NoThread                           , mdShowReactions     = True                           , mdMessageWidthLimit = Nothing+                          , mdMyUsername        = myUsername st                           }                         ]             _ -> emptyWidget@@ -314,7 +315,7 @@         newlineToSpace c = c         channelNamePair = mkChannelName (chan^.ccInfo) <> " - " <> (chan^.ccInfo.cdDisplayName) -    in renderText'+    in renderText' (myUsername st)          hs          (T.map newlineToSpace (channelNameString <> maybeTopic)) @@ -563,6 +564,7 @@                                   , mdThreadState       = NoThread                                   , mdShowReactions     = True                                   , mdMessageWidthLimit = Nothing+                                  , mdMyUsername        = myUsername st                                   }                  in (maybePreviewViewport msgPreview) <=>                     hBorderWithLabel (withDefAttr clientEmphAttr $ str "[Preview ↑]")
src/Draw/Messages.hs view
@@ -13,7 +13,7 @@ import qualified Data.Foldable as F import qualified Graphics.Vty as Vty import           Lens.Micro.Platform ( (.~), to )-import           Network.Mattermost.Types ( ServerTime(..) )+import           Network.Mattermost.Types ( ServerTime(..), userUsername ) import           Prelude () import           Prelude.MH @@ -74,6 +74,7 @@               , mdThreadState       = threadState               , mdShowReactions     = True               , mdMessageWidthLimit = Nothing+              , mdMyUsername        = userUsername $ myUser st               }         fullMsg =           case msg^.mUser of
src/Draw/ShowHelp.hs view
@@ -442,7 +442,7 @@ mkKeybindHelp :: Keybinding -> Widget Name mkKeybindHelp (KB desc ev _ _) =     (withDefAttr helpEmphAttr $ txt $ padTo kbColumnWidth $ ppBinding $ eventToBinding ev) <+>-    (vLimit 1 $ hLimit kbDescColumnWidth $ renderText desc <+> fill ' ')+    (hLimit kbDescColumnWidth $ padRight Max $ renderText desc)  mkKeybindEventSectionHelp :: ((Text, Text, [Text]) -> a)                           -> ([a] -> a)
src/Draw/URLList.hs view
@@ -38,7 +38,7 @@           let time = link^.linkTime           in attr sel $ vLimit 2 $             (vLimit 1 $-             hBox [ let u = maybe "" id (link^.linkUser.to (nameForUserRef st)) in colorUsername u u+             hBox [ let u = maybe "" id (link^.linkUser.to (nameForUserRef st)) in colorUsername (myUsername st) u u                   , if link^.linkName == link^.linkURL                       then emptyWidget                       else (txt ": " <+> (renderText $ link^.linkName))
src/Draw/UserListOverlay.hs view
@@ -25,7 +25,7 @@ drawUserListOverlay st =     let overlay = drawListOverlay (st^.csUserListOverlay) userSearchScopeHeader                                   userSearchScopeNoResults userSearchScopePrompt-                                  renderUser+                                  (renderUser (myUsername st))     in joinBorders overlay : drawMain False st  userSearchScopePrompt :: UserSearchScope -> Widget Name@@ -51,13 +51,13 @@         AllUsers Nothing     -> "Users On This Server"         AllUsers (Just _)    -> "Users In My Team" -renderUser :: Bool -> UserInfo -> Widget Name-renderUser foc ui =+renderUser :: Text -> Bool -> UserInfo -> Widget Name+renderUser myUName foc ui =     (if foc then forceAttr L.listSelectedFocusedAttr else id) $     vLimit 2 $     padRight Max $-    hBox $ (padRight (Pad 1) $ colorUsername (ui^.uiName) (T.singleton $ userSigilFromInfo ui))-           : (hLimit usernameWidth $ padRight Max $ colorUsername (ui^.uiName) (ui^.uiName))+    hBox $ (padRight (Pad 1) $ colorUsername myUName (ui^.uiName) (T.singleton $ userSigilFromInfo ui))+           : (hLimit usernameWidth $ padRight Max $ colorUsername myUName (ui^.uiName) (ui^.uiName))            : extras     where         sanitize = T.strip . T.replace "\t" " "
src/Events/Main.hs view
@@ -21,9 +21,11 @@  onEventMain :: Vty.Event -> MH () onEventMain =-  handleKeyboardEvent mainKeybindings $ \ ev -> case ev of-    (Vty.EvPaste bytes) -> handlePaste bytes-    _ -> handleEditingInput ev+  handleKeyboardEvent mainKeybindings $ \ ev -> do+      resetReturnChannel+      case ev of+          (Vty.EvPaste bytes) -> handlePaste bytes+          _ -> handleEditingInput ev  mainKeybindings :: KeyConfig -> [Keybinding] mainKeybindings = mkKeybindings@@ -99,7 +101,7 @@     , mkKb PrevChannelEvent "Change to the previous channel in the channel list"          prevChannel -    , mkKb NextUnreadChannelEvent "Change to the next channel with unread messages"+    , mkKb NextUnreadChannelEvent "Change to the next channel with unread messages or return to the channel marked '~'"          nextUnreadChannel      , mkKb ShowAttachmentListEvent "Show the attachment list"
src/Login.hs view
@@ -37,15 +37,16 @@ -- status message that is shown is shown long enough for the user to -- see what is happening (rather than just flashing by in the case -- of a fast server connection). For this usability reason, we have--- a "startup timer" thread: the thread waits a specified number of--- milliseconds (see below) and then notifies the interface that it has--- timed out. If there is an initial connection attempt underway that--- succeeds *before* the timer fires, we wait until the timer fires--- before quitting the application. This ensures that the "connecting--- to..." message stays on the screen long enough to not be jarring, and--- to show the user what is happening. If the connection fails before--- the timer fires, we just resume normal operation and show the login--- form so the user can intervene.+-- a "startup timer" thread: the thread waits a specified number+-- of milliseconds (see 'startupTimerMilliseconds' below) and then+-- notifies the interface that it has timed out. If there is an initial+-- connection attempt underway that succeeds *before* the timer+-- fires, we wait until the timer fires before quitting the Login+-- application and returning control to Matterhorn. This ensures that+-- the "connecting to..." message stays on the screen long enough to not+-- be jarring, and to show the user what is happening. If the connection+-- fails before the timer fires, we just resume normal operation and+-- show the login form so the user can intervene. module Login   ( LoginAttempt(..)   , interactiveGetLoginSession@@ -63,41 +64,46 @@ import           Brick.Widgets.Center import           Brick.Widgets.Edit import           Control.Concurrent ( forkIO, threadDelay )-import           Control.Exception ( catch )+import           Control.Exception ( SomeException, catch, try )+import           Data.Char (isHexDigit)+import           Data.List (tails, inits) import           System.IO.Error ( catchIOError ) import qualified Data.Text as T import           Graphics.Vty hiding (mkVty) import           Lens.Micro.Platform ( (.~), Lens', makeLenses ) import qualified System.IO.Error as Err+import           Network.URI ( URI(..), URIAuth(..), parseURI )  import           Network.Mattermost ( ConnectionData )-import           Network.Mattermost.Types ( Session, User, Login(..), ConnectionPoolConfig(..)-                                          , initConnectionData, ConnectionType(..) )+import           Network.Mattermost.Types.Internal ( Token(..) )+import           Network.Mattermost.Types ( Session(..), User, Login(..), ConnectionPoolConfig(..)+                                          , initConnectionData, ConnectionType(..), UserParam(..) ) import           Network.Mattermost.Exceptions ( LoginFailureException(..) )-import           Network.Mattermost.Endpoints ( mmLogin )+import           Network.Mattermost.Endpoints ( mmGetUser, mmGetLimitedClientConfiguration, mmLogin )  import           Markdown import           Themes ( clientEmphAttr ) import           Types ( ConnectionInfo(..)-                       , ciPassword, ciUsername, ciHostname-                       , ciPort, AuthenticationException(..)+                       , ciPassword, ciUsername, ciHostname, ciUrlPath+                       , ciPort, ciType, AuthenticationException(..)                        , LogManager, LogCategory(..), ioLogWithManager+                       , ciAccessToken                        )   -- | Resource names for the login interface. data Name =-    Hostname-    | Port+      Server     | Username     | Password+    | AccessToken     deriving (Ord, Eq, Show)  -- | The result of an authentication attempt. data LoginAttempt =     AttemptFailed AuthenticationException     -- ^ The attempt failed with the corresponding error.-    | AttemptSucceeded ConnectionInfo ConnectionData Session User+    | AttemptSucceeded ConnectionInfo ConnectionData Session User (Maybe Text) --team     -- ^ The attempt succeeded.  -- | The state of the login interface: whether a login attempt is@@ -167,41 +173,92 @@             -- attempt.             -> LogManager             -- ^ The log manager used to do logging.-            -> ConnectionType-            -- ^ The kind of connection to make to the server.             -> BChan LoginRequest             -- ^ The channel on which we'll await requests.             -> BChan LoginEvent             -- ^ The channel to which we'll send login attempt results.             -> IO ()-loginWorker setLogger logMgr connTy requestChan respChan = forever $ do+loginWorker setLogger logMgr requestChan respChan = forever $ do     req <- readBChan requestChan     case req of         DoLogin initial connInfo -> do             writeBChan respChan $ StartConnect initial $ connInfo^.ciHostname-            ioLogWithManager logMgr Nothing LogGeneral $ "Attempting authentication to " <> connInfo^.ciHostname+            let doLog = ioLogWithManager logMgr Nothing LogGeneral -            let login = Login { username = connInfo^.ciUsername-                              , password = connInfo^.ciPassword-                              }+            doLog $ "Attempting authentication to " <> connInfo^.ciHostname -            cd <- fmap setLogger $ initConnectionData (connInfo^.ciHostname) (fromIntegral (connInfo^.ciPort)) connTy poolCfg+            cdResult <- findConnectionData connInfo+            case cdResult of+              Left e ->+                do writeBChan respChan $ LoginResult $ AttemptFailed $ OtherAuthError e+              Right (cd_, mbTeam) -> do+                  let cd = setLogger cd_+                      token = connInfo^.ciAccessToken+                  case T.null token of+                      False -> do+                          let sess = Session cd $ Token $ T.unpack token -            result <- convertLoginExceptions $ mmLogin cd login-            case result of-                Left e -> do-                    ioLogWithManager logMgr Nothing LogGeneral $-                        "Error authenticating to " <> connInfo^.ciHostname <> ": " <> (T.pack $ show e)-                    writeBChan respChan $ LoginResult $ AttemptFailed e-                Right (Left e) -> do-                    ioLogWithManager logMgr Nothing LogGeneral $-                        "Error authenticating to " <> connInfo^.ciHostname <> ": " <> (T.pack $ show e)-                    writeBChan respChan $ LoginResult $ AttemptFailed $ LoginError e-                Right (Right (sess, user)) -> do-                    ioLogWithManager logMgr Nothing LogGeneral $-                        "Authenticated successfully to " <> connInfo^.ciHostname <> " as " <> connInfo^.ciUsername-                    writeBChan respChan $ LoginResult $ AttemptSucceeded connInfo cd sess user+                          userResult <- try $ mmGetUser UserMe sess+                          writeBChan respChan $ case userResult of+                              Left (e::SomeException) ->+                                  LoginResult $ AttemptFailed $ OtherAuthError e+                              Right user ->+                                  LoginResult $ AttemptSucceeded connInfo cd sess user mbTeam+                      True -> do+                          let login = Login { username = connInfo^.ciUsername+                                            , password = connInfo^.ciPassword+                                            } +                          result <- convertLoginExceptions $ mmLogin cd login+                          case result of+                              Left e -> do+                                  doLog $ "Error authenticating to " <> connInfo^.ciHostname <> ": " <> (T.pack $ show e)+                                  writeBChan respChan $ LoginResult $ AttemptFailed e+                              Right (Left e) -> do+                                  doLog $ "Error authenticating to " <> connInfo^.ciHostname <> ": " <> (T.pack $ show e)+                                  writeBChan respChan $ LoginResult $ AttemptFailed $ LoginError e+                              Right (Right (sess, user)) -> do+                                  doLog $ "Authenticated successfully to " <> connInfo^.ciHostname <> " as " <> connInfo^.ciUsername+                                  writeBChan respChan $ LoginResult $ AttemptSucceeded connInfo cd sess user mbTeam++++-- | Searches prefixes of the given URL to determine Mattermost API URL path and team name+findConnectionData :: ConnectionInfo -> IO (Either SomeException (ConnectionData, Maybe Text))+findConnectionData connInfo = startSearch++  where+    components = filter (not . T.null) (T.split ('/'==) (connInfo^.ciUrlPath))++    -- the candidates list is never empty because inits never returns an empty list+    primary:alternatives =+        reverse+        [ (T.intercalate "/" l, listToMaybe r) | (l,r) <- zip (inits components) (tails components) ]++    tryCandidate :: (Text, Maybe Text) -> IO (Either SomeException (ConnectionData, Maybe Text))+    tryCandidate (path, team) =+       do cd  <- initConnectionData (connInfo^.ciHostname) (fromIntegral (connInfo^.ciPort)) path (connInfo^.ciType) poolCfg+          res <- try (mmGetLimitedClientConfiguration cd)+          pure $! case res of+                    Left e  -> Left e+                    Right{} -> Right (cd, team)++    -- This code prefers to report the error from the URL corresponding to what the user+    -- actually provided. Errors from derived URLs are lost in favor of this first error.+    startSearch =+      do res1 <- tryCandidate primary+         case res1 of+           Left e -> search e alternatives+           Right cd -> pure (Right cd)++    search e [] = pure (Left e)+    search e (x:xs) =+      do res <- tryCandidate x+         case res of+           Left {}  -> search e xs+           Right cd -> pure (Right cd)++ -- | The amount of time that the startup timer thread will wait before -- firing. startupTimerMilliseconds :: Int@@ -228,9 +285,6 @@                            -- never fires since the login app doesn't                            -- use suspendAndResume, but we need it to                            -- satisfy the Brick API.)-                           -> ConnectionType-                           -- ^ The kind of connection to make to the-                           -- mattermost server.                            -> (ConnectionData -> ConnectionData)                            -- ^ The function to set the logger on                            -- connection handles.@@ -243,11 +297,11 @@                            -- initial connection attempt is made without                            -- first getting the user to hit Enter.                            -> IO (Maybe LoginAttempt, Vty)-interactiveGetLoginSession vty mkVty connTy setLogger logMgr initialConfig = do+interactiveGetLoginSession vty mkVty setLogger logMgr initialConfig = do     requestChan <- newBChan 10     respChan <- newBChan 10 -    void $ forkIO $ loginWorker setLogger logMgr connTy requestChan respChan+    void $ forkIO $ loginWorker setLogger logMgr requestChan respChan     void $ forkIO $ startupTimer respChan      let initialState = mkState initialConfig requestChan@@ -268,8 +322,11 @@ populatedConnectionInfo :: ConnectionInfo -> Bool populatedConnectionInfo ci =     and [ not $ T.null $ ci^.ciHostname-        , not $ T.null $ ci^.ciUsername-        , not $ T.null $ ci^.ciPassword+        , or [ and [ not $ T.null $ ci^.ciUsername+                   , not $ T.null $ ci^.ciPassword+                   ]+             , not $ T.null $ ci^.ciAccessToken+             ]         , ci^.ciPort > 0         ] @@ -285,10 +342,10 @@                       , _timeoutFired = False                       }         form = mkForm cInfo-        initialFocus = if | T.null (cInfo^.ciHostname) -> Hostname+        initialFocus = if | T.null (cInfo^.ciHostname) -> Server                           | T.null (cInfo^.ciUsername) -> Username                           | T.null (cInfo^.ciPassword) -> Password-                          | otherwise                  -> Hostname+                          | otherwise                  -> Server  app :: App State LoginEvent Name app = App@@ -345,33 +402,104 @@ mkForm :: ConnectionInfo -> Form ConnectionInfo e Name mkForm =     let label s w = padBottom (Pad 1) $-                    (vLimit 1 $ hLimit 18 $ str s <+> fill ' ') <+> w-    in newForm [ label "Server hostname:" @@=-                   editHostname ciHostname Hostname-               , label "Server port:" @@=-                   editShowableField ciPort Port-               , label "Username:" @@=-                   editTextField ciUsername Username (Just 1)-               , label "Password:" @@=-                   editPasswordField ciPassword Password+                    (vLimit 1 $ hLimit 22 $ str s <+> fill ' ') <+> w+        above s w = hCenter (str s) <=> w+    in newForm [ label "Server URL:"     @@= editServer+               , (above "Provide a username and password:" .+                  label "Username:")     @@= editTextField ciUsername Username (Just 1)+               , label "Password:"       @@= editPasswordField ciPassword Password+               , (above "Or provide an OAuth or Personal Access Token:" .+                  label "Access Token:") @@= editPasswordField ciAccessToken AccessToken                ] -editHostname :: (Show n, Ord n) => Lens' s Text -> n -> s -> FormFieldState s e n-editHostname stLens n =-    let ini = id-        val = validHostname-        limit = Just 1-        renderTxt = txt . T.unlines-    in editField stLens n limit ini val renderTxt id+serverLens :: Lens' ConnectionInfo (Text, Int, Text, ConnectionType)+serverLens f ci = fmap (\(x,y,z,w) -> ci { _ciHostname = x, _ciPort = y, _ciUrlPath = z, _ciType = w})+                       (f (ci^.ciHostname, ci^.ciPort, ci^.ciUrlPath, ci^.ciType)) -validHostname :: [Text] -> Maybe Text-validHostname ls =-    let s = T.unpack t-        t = T.concat ls-    in if all (flip notElem (":/"::String)) s-       then Just t-       else Nothing+-- | Validate a server URI @hostname[:port][/path]@. Result is either an error message+-- indicating why validation failed or a tuple of (hostname, port, path)+validServer :: [Text] -> Either String (Text, Int, Text, ConnectionType)+validServer ts = +  do t <- case ts of+            []  -> Left "No input"+            [t] -> Right t+            _   -> Left "Too many lines"++     let inputWithScheme+           | "://" `T.isInfixOf` t = t+           | otherwise = "https://" <> t++     uri <- case parseURI (T.unpack inputWithScheme) of+              Nothing  -> Left "Unable to parse URI"+              Just uri -> Right uri++     auth <- case uriAuthority uri of+               Nothing   -> Left "Missing authority part"+               Just auth -> Right auth++     ty <- case uriScheme uri of+             "http:"           -> Right ConnectHTTP+             "https:"          -> Right (ConnectHTTPS True)+             "https-insecure:" -> Right (ConnectHTTPS False)+             _                 -> Left "Unknown scheme"++     port <- case (ty, uriPort auth) of+               (ConnectHTTP   , "") -> Right 80+               (ConnectHTTPS{}, "") -> Right 443+               (_, ':':portStr)+                 | Just port <- readMaybe portStr -> Right port+               _ -> Left "Invalid port"++     let host+           | not (null (uriRegName auth))+           , '[' == head (uriRegName auth)+           , ']' == last (uriRegName auth)+           = init (tail (uriRegName auth))+           | otherwise = uriRegName auth++     if null (uriRegName auth) then Left "Missing server name" else Right ()+     if null (uriQuery uri) then Right () else Left "Unexpected URI query"+     if null (uriFragment uri) then Right () else Left "Unexpected URI fragment"+     if null (uriUserInfo auth) then Right () else Left "Unexpected credentials"++     Right (T.pack host, port, T.pack (uriPath uri), ty)+++renderServer :: (Text, Int, Text, ConnectionType) -> Text+renderServer (h,p,u,t) = scheme <> hStr <> portStr <> uStr+  where+    hStr+      | T.all (\x -> isHexDigit x || ':'==x) h+      , T.any (':'==) h = "[" <> h <> "]"+      | otherwise = h++    scheme =+      case t of+        ConnectHTTP        -> "http://"+        ConnectHTTPS True  -> ""+        ConnectHTTPS False -> "https-insecure://"++    uStr+      | T.null u = u+      | otherwise = T.cons '/' (T.dropWhile ('/'==) u)++    portStr =+      case t of+        ConnectHTTP    | p ==  80 -> T.empty+        ConnectHTTPS{} | p == 443 -> T.empty+        _                         -> T.pack (':':show p)++editServer :: ConnectionInfo -> FormFieldState ConnectionInfo e Name+editServer =+    let val ts = case validServer ts of+                   Left{} -> Nothing+                   Right x-> Just x+        limit = Just 1+        renderTxt [""] = str "(Paste your Mattermost URL here)"+        renderTxt ts = txt (T.unlines ts)+    in editField serverLens Server limit renderServer val renderTxt id+ errorAttr :: AttrName errorAttr = "errorMessage" @@ -417,7 +545,7 @@                    txt "Connecting to " <+> withDefAttr clientEmphAttr (txt host) <+> txt "..."     in case st^.currentState of           Idle -> case st^.lastAttempt of-              Just (AttemptSucceeded ci _ _ _) -> msg (ci^.ciHostname)+              Just (AttemptSucceeded ci _ _ _ _) -> msg (ci^.ciHostname)               _ -> emptyWidget           (Connecting _ host) -> msg host 
src/Main.hs view
@@ -21,7 +21,7 @@      configResult <- if optIgnoreConfig opts                     then return $ Right defaultConfig-                    else findConfig (optConfLocation opts)+                    else fmap snd <$> findConfig (optConfLocation opts)      config <- case configResult of         Left err -> do@@ -30,19 +30,20 @@         Right c -> return c      let keyConfig = configUserKeys config+        format = optPrintFormat opts      printedCommands <- case optPrintCommands opts of-        Nothing -> return False-        Just ty -> do-            case ty of+        False -> return False+        True -> do+            case format of                 Markdown -> T.putStrLn commandMarkdownTable                 Plain -> T.putStrLn commandTextTable             return True      printedKeybindings <- case optPrintKeybindings opts of-        Nothing -> return False-        Just ty -> do-            case ty of+        False -> return False+        True -> do+            case format of                 Markdown -> T.putStrLn $ keybindingMarkdownTable keyConfig                 Plain -> T.putStrLn $ keybindingTextTable keyConfig             return True
src/Markdown.hs view
@@ -142,6 +142,8 @@                 -- rendering context. If specified, all non-code blocks                 -- will be wrapped at this width and code blocks will be                 -- rendered using the context's width.+                , mdMyUsername :: Text+                -- ^ The username of the user running Matterhorn.                 }  -- | renderMessage performs markdown rendering of the specified message.@@ -156,13 +158,13 @@             | isEmote msg ->                 [ B.withDefAttr pinnedMessageIndicatorAttr $ B.txt $ if msg^.mPinned then "[PIN]" else ""                 , B.txt $ (if msg^.mFlagged then "[!] " else "") <> "*"-                , colorUsername un un+                , colorUsername mdMyUsername un un                 , botElem                 , B.txt " "                 ]             | otherwise ->                 [ B.withDefAttr pinnedMessageIndicatorAttr $ B.txt $ if msg^.mPinned then "[PIN] " else ""-                , colorUsername un un+                , colorUsername mdMyUsername un un                 , botElem                 , B.txt $ (if msg^.mFlagged then "[!]" else "") <> ": "                 ]@@ -245,7 +247,7 @@         multiLnLayout hs w nameElems bs =             if mdIndentBlocks                then vBox [ hBox nameElems-                         , hBox [B.txt "  ", renderMarkdown hs ((subtract 2) <$> w) bs]+                         , hBox [B.txt "  ", renderMarkdown mdMyUsername hs ((subtract 2) <$> w) bs]                          ]                else nameNextToMessage hs w nameElems bs @@ -253,7 +255,7 @@             Widget Fixed Fixed $ do                 nameResult <- render $ hBox nameElems                 let newW = subtract (V.imageWidth (nameResult^.imageL)) <$> w-                render $ hBox [raw (nameResult^.imageL), renderMarkdown hs newW bs]+                render $ hBox [raw (nameResult^.imageL), renderMarkdown mdMyUsername hs newW bs]          breakCheck C.LineBreak = True         breakCheck C.SoftBreak = True@@ -275,9 +277,9 @@ cursorSentinel = '‸'  -- Render markdown with username highlighting-renderMarkdown :: HighlightSet -> Maybe Int -> Blocks -> Widget a-renderMarkdown hSet w =-  B.vBox . toList . fmap (blockToWidget hSet w) . addBlankLines+renderMarkdown :: Text -> HighlightSet -> Maybe Int -> Blocks -> Widget a+renderMarkdown curUser hSet w =+  B.vBox . toList . fmap (blockToWidget curUser hSet w) . addBlankLines  -- Add blank lines only between adjacent elements of the same type, to -- save space@@ -303,10 +305,10 @@  -- Render text to markdown without username highlighting renderText :: Text -> Widget a-renderText txt = renderText' emptyHSet txt+renderText txt = renderText' "" emptyHSet txt -renderText' :: HighlightSet -> Text -> Widget a-renderText' hSet txt = renderMarkdown hSet Nothing bs+renderText' :: Text -> HighlightSet -> Text -> Widget a+renderText' curUser hSet txt = renderMarkdown curUser hSet Nothing bs   where C.Doc _ bs = C.markdown C.def txt  vBox :: F.Foldable f => f (Widget a) -> Widget a@@ -322,26 +324,26 @@ maybeHLimit Nothing w = w maybeHLimit (Just i) w = hLimit i w -blockToWidget :: HighlightSet -> Maybe Int -> Block -> Widget a-blockToWidget hSet w (C.Para is) =-    toInlineChunk w is hSet-blockToWidget hSet w (C.Header n is) =+blockToWidget :: Text -> HighlightSet -> Maybe Int -> Block -> Widget a+blockToWidget curUser hSet w (C.Para is) =+    toInlineChunk curUser w is hSet+blockToWidget curUser hSet w (C.Header n is) =     B.withDefAttr clientHeaderAttr $-      hBox [B.padRight (B.Pad 1) $ header n, toInlineChunk (subtract 1 <$> w) is hSet]-blockToWidget hSet w (C.Blockquote is) =+      hBox [B.padRight (B.Pad 1) $ header n, toInlineChunk curUser (subtract 1 <$> w) is hSet]+blockToWidget curUser hSet w (C.Blockquote is) =     maybeHLimit w $-    addQuoting (vBox $ fmap (blockToWidget hSet w) is)-blockToWidget hSet w (C.List _ l bs) =+    addQuoting (vBox $ fmap (blockToWidget curUser hSet w) is)+blockToWidget curUser hSet w (C.List _ l bs) =     maybeHLimit w $-    blocksToList l w bs hSet-blockToWidget hSet _ (C.CodeBlock ci tx) =+    blocksToList curUser l w bs hSet+blockToWidget _ hSet _ (C.CodeBlock ci tx) =     let f = maybe rawCodeBlockToWidget (codeBlockToWidget (hSyntaxMap hSet)) mSyntax         mSyntax = Sky.lookupSyntax (C.codeLang ci) (hSyntaxMap hSet)     in f tx-blockToWidget _ w (C.HtmlBlock txt) =+blockToWidget _ _ w (C.HtmlBlock txt) =     maybeHLimit w $     textWithCursor txt-blockToWidget _ w (C.HRule) =+blockToWidget _ _ w (C.HRule) =     maybeHLimit w $     B.vLimit 1 (B.fill '*') @@ -381,17 +383,17 @@             expandEmpty s  = s         in padding <+> (B.vBox $ textWithCursor <$> theLines) -toInlineChunk :: Maybe Int -> Inlines -> HighlightSet -> Widget a-toInlineChunk w is hSet = B.Widget B.Fixed B.Fixed $ do+toInlineChunk :: Text -> Maybe Int -> Inlines -> HighlightSet -> Widget a+toInlineChunk curUser w is hSet = B.Widget B.Fixed B.Fixed $ do   ctx <- B.getContext   let width = fromMaybe (ctx^.B.availWidthL) w       fs    = toFragments hSet is-      ws    = fmap gatherWidgets (split width hSet fs)+      ws    = fmap (gatherWidgets curUser) (split width hSet fs)   B.render (vBox (fmap hBox ws)) -blocksToList :: ListType -> Maybe Int -> [Blocks] -> HighlightSet -> Widget a-blocksToList lt w bs hSet = vBox-  [ B.txt i <+> (vBox (fmap (blockToWidget hSet w) b))+blocksToList :: Text -> ListType -> Maybe Int -> [Blocks] -> HighlightSet -> Widget a+blocksToList curUser lt w bs hSet = vBox+  [ B.txt i <+> (vBox (fmap (blockToWidget curUser hSet w) b))   | b <- bs | i <- is ]   where is = case lt of           C.Bullet _ -> repeat ("• ")@@ -592,8 +594,8 @@  -- This finds adjacent string-ey fragments and concats them, so -- we can use fewer widgets-gatherWidgets :: Seq Fragment -> Seq (Widget a)-gatherWidgets (viewl-> (Fragment frag style :< rs)) = go style (strOf frag) rs+gatherWidgets :: Text -> Seq Fragment -> Seq (Widget a)+gatherWidgets curUser (viewl-> (Fragment frag style :< rs)) = go style (strOf frag) rs   where go s t (viewl-> (Fragment f s' :< xs))           | s == s' = go s (t <> strOf f) xs         go s t xs =@@ -608,17 +610,17 @@                 Link l ->                     B.hyperlink l $ B.withDefAttr urlAttr $ case frag of                         TComplex fs ->-                            hBox $ gatherWidgets fs+                            hBox $ gatherWidgets curUser fs                         _ ->                             rawText                 Emoji  -> B.withDefAttr emojiAttr rawText-                User u -> colorUsername u t+                User u -> colorUsername curUser u t                 Channel -> B.withDefAttr channelNameAttr rawText               widget                 | T.any (== cursorSentinel) t = B.visible rawWidget                 | otherwise = rawWidget-          in widget <| gatherWidgets xs-gatherWidgets _ =+          in widget <| gatherWidgets curUser xs+gatherWidgets _ _ =   S.empty  textWithCursor :: Text -> Widget a
src/Options.hs view
@@ -5,6 +5,10 @@ import Prelude () import Prelude.MH +import Config+import Data.Char ( toLower )+import Data.Foldable (traverse_)+import Data.Tuple ( swap ) import Data.Version ( showVersion ) import Development.GitRev import Network.Mattermost.Version ( mmApiVersion )@@ -12,15 +16,17 @@ import System.Console.GetOpt import System.Environment ( getArgs ) import System.Exit ( exitFailure, exitSuccess )+import System.IO ( hPutStrLn, stderr )   data Behaviour   = Normal   | ShowVersion   | ShowHelp+  | CheckConfig     deriving (Eq, Show) -data PrintMode =+data PrintFormat =     Markdown | Plain deriving (Eq, Show)  data Options = Options@@ -28,8 +34,9 @@   , optLogLocation      :: Maybe FilePath   , optBehaviour        :: Behaviour   , optIgnoreConfig     :: Bool-  , optPrintKeybindings :: Maybe PrintMode-  , optPrintCommands    :: Maybe PrintMode+  , optPrintKeybindings :: Bool+  , optPrintCommands    :: Bool+  , optPrintFormat      :: PrintFormat   } deriving (Eq, Show)  defaultOptions :: Options@@ -38,8 +45,9 @@   , optLogLocation      = Nothing   , optBehaviour        = Normal   , optIgnoreConfig     = False-  , optPrintKeybindings = Nothing-  , optPrintCommands    = Nothing+  , optPrintKeybindings = False+  , optPrintCommands    = False+  , optPrintFormat      = Plain   }  optDescrs :: [OptDescr (Options -> Options)]@@ -59,20 +67,46 @@   , Option ['i'] ["ignore-config"]     (NoArg (\ c -> c { optIgnoreConfig = True }))     "Start with no configuration"-  , Option ['k'] ["keybindings-text"]-    (NoArg (\ c -> c { optPrintKeybindings = Just Plain }))-    "Print keybindings effective for the current configuration in plain text format"-  , Option ['K'] ["keybindings-markdown"]-    (NoArg (\ c -> c { optPrintKeybindings = Just Markdown }))-    "Print keybindings effective for the current configuration in Markdown format"-  , Option ['m'] ["commands-text"]-    (NoArg (\ c -> c { optPrintCommands = Just Plain }))-    "Print available commands in plain text format"-  , Option ['M'] ["commands-markdown"]-    (NoArg (\ c -> c { optPrintCommands = Just Markdown }))-    "Print available commands in Markdown format"+  , Option ['k'] ["keybindings"]+    (NoArg (\ c -> c { optPrintKeybindings = True }))+    "Print keybindings effective for the current configuration"+  , Option ['m'] ["commands"]+    (NoArg (\ c -> c { optPrintCommands = True }))+    "Print available commands"+  , Option ['f'] ["format"]+    (ReqArg handleFormat "FORMAT")+    ("Print keybinding or command output in the specified format " <>+     "(options: " <> formatChoicesStr <> ", default: " <>+     formatStringFor (optPrintFormat defaultOptions) <> ")")+  , Option [] ["check-config"]+    (NoArg (\ c -> c { optBehaviour = CheckConfig }))+    "Validate configuration file"   ] +formatChoices :: [(String, PrintFormat)]+formatChoices =+    [ ("plain", Plain)+    , ("markdown", Markdown)+    ]++formatStringFor :: PrintFormat -> String+formatStringFor fmt =+    case lookup fmt (swap <$> formatChoices) of+        Nothing -> error $ "BUG: no format string for " <> show fmt+        Just s -> s++formatChoicesStr :: String+formatChoicesStr = intercalate ", " $ fst <$> formatChoices++handleFormat :: String -> Options -> Options+handleFormat fmtStr c =+    let fmt = case lookup (toLower <$> fmtStr) formatChoices of+            Just f -> f+            Nothing ->+                error $ "Invalid format: " <> show fmtStr <> ", choices: " <>+                        formatChoicesStr+    in c { optPrintFormat = fmt }+ mhVersion :: String mhVersion   | $(gitHash) == ("UNKNOWN" :: String) = "matterhorn " ++ showVersion version@@ -95,10 +129,28 @@         Normal -> return rs         ShowHelp -> usage >> exitSuccess         ShowVersion -> putStrLn fullVersionString >> exitSuccess-    (_, _, []) -> do-      usage-      exitFailure+        CheckConfig -> checkConfiguration (optConfLocation rs)     (_, _, errs) -> do       mapM_ putStr errs       usage       exitFailure++checkConfiguration :: Maybe FilePath -> IO a+checkConfiguration mb =+  do res <- findConfig mb+     let writeLn = hPutStrLn stderr+         printLocation Nothing = "No configuration file"+         printLocation (Just fp) = "Location: " ++ fp+     case res of+       Left e ->+         do writeLn e+            exitFailure+       Right ([], config) ->+         do writeLn "Configuration file valid"+            writeLn (printLocation (configAbsPath config))+            exitSuccess+       Right (ws, config) ->+         do writeLn "Configuration file generated warnings"+            writeLn (printLocation (configAbsPath config))+            traverse_ writeLn ws+            exitFailure
src/State/Channels.hs view
@@ -21,6 +21,8 @@   , prevChannel   , nextChannel   , recentChannel+  , setReturnChannel+  , resetReturnChannel   , hideDMChannel   , createGroupChannel   , showGroupChannelPref@@ -34,6 +36,7 @@   , removeUserFromCurrentChannel   , removeChannelFromState   , isRecentChannel+  , isReturnChannel   , isCurrentChannel   , deleteCurrentChannel   , startLeaveCurrentChannel@@ -411,7 +414,7 @@ setFocus :: ChannelId -> MH () setFocus cId = do     showChannelInSidebar cId True-    setFocusWith True (Z.findRight ((== cId) . channelListEntryChannelId))+    setFocusWith True (Z.findRight ((== cId) . channelListEntryChannelId)) (return ())  showChannelInSidebar :: ChannelId -> Bool -> MH () showChannelInSidebar cId setPending = do@@ -474,8 +477,10 @@  setFocusWith :: Bool              -> (Zipper ChannelListGroup ChannelListEntry-             -> Zipper ChannelListGroup ChannelListEntry) -> MH ()-setFocusWith updatePrev f = do+             -> Zipper ChannelListGroup ChannelListEntry)+             -> MH ()+             -> MH ()+setFocusWith updatePrev f onNoChange = do     oldZipper <- use csFocus     let newZipper = f oldZipper         newFocus = Z.focus newZipper@@ -483,18 +488,20 @@      -- If we aren't changing anything, skip all the book-keeping because     -- we'll end up clobbering things like csRecentChannel.-    when (newFocus /= oldFocus) $ do-        mh $ invalidateCacheEntry ChannelSidebar-        resetAutocomplete-        preChangeChannelCommon-        csFocus .= newZipper+    if newFocus /= oldFocus+       then do+          mh $ invalidateCacheEntry ChannelSidebar+          resetAutocomplete+          preChangeChannelCommon+          csFocus .= newZipper -        now <- liftIO getCurrentTime-        newCid <- use csCurrentChannelId-        csChannel(newCid).ccInfo.cdSidebarShowOverride .= Just now+          now <- liftIO getCurrentTime+          newCid <- use csCurrentChannelId+          csChannel(newCid).ccInfo.cdSidebarShowOverride .= Just now -        updateViewed updatePrev-        postChangeChannelCommon+          updateViewed updatePrev+          postChangeChannelCommon+       else onNoChange  postChangeChannelCommon :: MH () postChangeChannelCommon = do@@ -660,32 +667,69 @@             updateSidebar  nextChannel :: MH ()-nextChannel = setFocusWith True Z.right+nextChannel = do+    resetReturnChannel+    setFocusWith True Z.right (return ())  -- | This is almost never what you want; we use this when we delete a -- channel and we don't want to update the deleted channel's view time. nextChannelSkipPrevView :: MH ()-nextChannelSkipPrevView = setFocusWith False Z.right+nextChannelSkipPrevView = setFocusWith False Z.right (return ())  prevChannel :: MH ()-prevChannel = setFocusWith True Z.left+prevChannel = do+    resetReturnChannel+    setFocusWith True Z.left (return ())  recentChannel :: MH () recentChannel = do   recent <- use csRecentChannel   case recent of     Nothing  -> return ()-    Just cId -> setFocus cId+    Just cId -> do+        ret <- use csReturnChannel+        when (ret == Just cId) resetReturnChannel+        setFocus cId +resetReturnChannel :: MH ()+resetReturnChannel = do+  val <- use csReturnChannel+  case val of+      Nothing -> return ()+      Just _ -> do+          mh $ invalidateCacheEntry ChannelSidebar+          csReturnChannel .= Nothing++gotoReturnChannel :: MH ()+gotoReturnChannel = do+  ret <- use csReturnChannel+  case ret of+    Nothing  -> return ()+    Just cId -> do+        resetReturnChannel+        setFocus cId++setReturnChannel :: MH ()+setReturnChannel = do+  ret <- use csReturnChannel+  case ret of+    Nothing  -> do+        cId <- use csCurrentChannelId+        csReturnChannel .= Just cId+        mh $ invalidateCacheEntry ChannelSidebar+    Just _ -> return ()+ nextUnreadChannel :: MH () nextUnreadChannel = do     st <- use id-    setFocusWith True (getNextUnreadChannel st)+    setReturnChannel+    setFocusWith True (getNextUnreadChannel st) gotoReturnChannel  nextUnreadUserOrChannel :: MH () nextUnreadUserOrChannel = do     st <- use id-    setFocusWith True (getNextUnreadUserOrChannel st)+    setReturnChannel+    setFocusWith True (getNextUnreadUserOrChannel st) gotoReturnChannel  leaveChannel :: ChannelId -> MH () leaveChannel cId = leaveChannelIfPossible cId False@@ -912,6 +956,9 @@  isRecentChannel :: ChatState -> ChannelId -> Bool isRecentChannel st cId = st^.csRecentChannel == Just cId++isReturnChannel :: ChatState -> ChannelId -> Bool+isReturnChannel st cId = st^.csReturnChannel == Just cId  joinChannelByName :: Text -> MH () joinChannelByName rawName = do
src/State/Common.hs view
@@ -123,6 +123,7 @@           (addMessage $ clientMessageToMessage msg & mMessageId .~ Just (MessageUUID uuid))   csChannels %= modifyChannelById cid addCMsg   mh $ invalidateCacheEntry $ ChannelMessages cid+  mh $ invalidateCacheEntry ChannelSidebar    let msgTy = case msg^.cmType of         Error -> LogError
src/State/Messages.hs view
@@ -517,7 +517,7 @@                     mh $ invalidateCacheEntry (ChannelMessages cId)                     csChannels %= modifyChannelById cId                       ((ccContents.cdMessages %~ addMessage msg') .-                       (adjustUpdated new) .+                       (if not ignoredJoinLeaveMessage then adjustUpdated new else id) .                        (\c -> if currCId == cId                               then c                               else case newPostData of
src/State/Setup.hs view
@@ -40,13 +40,19 @@   incompleteCredentials :: Config -> ConnectionInfo-incompleteCredentials config = ConnectionInfo hStr (configPort config) uStr pStr-    where-        hStr = maybe "" id $ configHost config-        uStr = maybe "" id $ configUser config-        pStr = case configPass config of-            Just (PasswordString s) -> s-            _                       -> ""+incompleteCredentials config = ConnectionInfo+  { _ciHostname = fromMaybe "" (configHost config)+  , _ciPort     = configPort config+  , _ciUrlPath  = fromMaybe "" (configUrlPath config)+  , _ciUsername = fromMaybe "" (configUser config)+  , _ciPassword = case configPass config of+                    Just (PasswordString s) -> s+                    _                       -> ""+  , _ciAccessToken = case configToken config of+                       Just (TokenString s) -> s+                       _                    -> ""+  , _ciType     = configConnectionType config+  }  apiLogEventToLogMessage :: LogEvent -> IO LogMessage apiLogEventToLogMessage ev = do@@ -73,11 +79,8 @@    let logApiEvent ev = apiLogEventToLogMessage ev >>= sendLogMessage logMgr       setLogger cd = cd `withLogger` logApiEvent-      connTy = if configUnsafeUseHTTP config-               then ConnectHTTP-               else ConnectHTTPS $ configValidateServerCertificate config -  (mLastAttempt, loginVty) <- interactiveGetLoginSession initialVty mkVty connTy+  (mLastAttempt, loginVty) <- interactiveGetLoginSession initialVty mkVty                                                          setLogger                                                          logMgr                                                          (incompleteCredentials config)@@ -86,7 +89,7 @@           Vty.shutdown vty           exitSuccess -  (session, me, cd) <- case mLastAttempt of+  (session, me, cd, mbTeam) <- case mLastAttempt of       Nothing ->           -- The user never attempted a connection and just chose to           -- quit.@@ -95,10 +98,10 @@           -- The user attempted a connection and failed, and then chose           -- to quit.           shutdown loginVty-      Just (AttemptSucceeded _ cd sess user) ->+      Just (AttemptSucceeded _ cd sess user mbTeam) ->           -- The user attempted a connection and succeeded so continue           -- with setup.-          return (sess, user, cd)+          return (sess, user, cd, mbTeam)    teams <- mmGetUsersTeams UserMe session   when (Seq.null teams) $ do@@ -107,7 +110,7 @@    (myTeam, teamSelVty) <- do       let foundTeam = do-             tName <- configTeam config+             tName <- mbTeam <|> configTeam config              let matchingTeam = listToMaybe $ filter matches $ toList teams                  matches t = (sanitizeUserText $ teamName t) == tName              matchingTeam
src/Themes.hs view
@@ -8,6 +8,7 @@   , themeDocs    -- * Attribute names+  , currentUserAttr   , timeAttr   , channelHeaderAttr   , channelListHeaderAttr@@ -126,6 +127,9 @@ timeAttr :: AttrName timeAttr = "time" +currentUserAttr :: AttrName+currentUserAttr = "currentUser"+ channelHeaderAttr :: AttrName channelHeaderAttr = "channelHeader" @@ -236,6 +240,7 @@ lightAttrs =     let sty = Sky.kate     in [ (timeAttr,                         fg black)+       , (currentUserAttr,                  defAttr `withStyle` bold)        , (channelHeaderAttr,                fg black `withStyle` underline)        , (channelListHeaderAttr,            fg cyan)        , (currentChannelNameAttr,           black `on` yellow `withStyle` bold)@@ -290,6 +295,7 @@ darkAttrs =   let sty = Sky.espresso   in [ (timeAttr,                         fg white)+     , (currentUserAttr,                  defAttr `withStyle` bold)      , (channelHeaderAttr,                fg white `withStyle` underline)      , (channelListHeaderAttr,            fg cyan)      , (currentChannelNameAttr,           black `on` yellow `withStyle` bold)@@ -353,14 +359,46 @@ usernameAttr :: Int -> AttrName usernameAttr i = "username" <> (attrName $ show i) -colorUsername :: Text -> Text -> Widget a-colorUsername username display =+-- | Render a string with a color chosen based on the text of a+-- username.+--+-- This function takes some display text and renders it using an+-- attribute based on the username associated with the text. If the+-- username associated with the text is equal to the username of+-- the user running Matterhorn, the display text is formatted with+-- 'currentAttr'. Otherwise it is formatted with an attribute chosen+-- by hashing the associated username and choosing from amongst the+-- username color hash buckets with 'usernameAttr'.+--+-- Usually the first argument to this function will be @myUsername st@,+-- where @st@ is a 'ChatState'.+--+-- The most common way to call this function is+--+-- @colorUsername (myUsername st) u u+--+-- The third argument is allowed to vary from the second since sometimes+-- we call this with the user's status sigil as the third argument.+colorUsername :: Text+              -- ^ The username for the user currently running+              -- Matterhorn+              -> Text+              -- ^ The username associated with the text to render+              -> Text+              -- ^ The text to render+              -> Widget a+colorUsername current username display =     let normalizedUsername = T.toLower username         aName = if normalizedUsername `elem` specialUserMentions                 then clientEmphAttr                 else usernameAttr h         h = hash normalizedUsername `mod` length usernameColors-    in withDefAttr aName $ txt (display)+        maybeWithCurrentAttr = if current == username+                               then withAttr currentUserAttr+                               else id+    in withDefAttr aName $+       maybeWithCurrentAttr $+       txt (display)  usernameColors :: [Attr] usernameColors =@@ -633,6 +671,9 @@       )     , ( FB.fileBrowserUnixSocketAttr       , "Attribute for Unix sockets in the file browser"+      )+    , ( currentUserAttr+      , "Attribute for the username of the user running Matterhorn"       )     ] <> [ (usernameAttr i, T.pack $ "Username color " <> show i)          | i <- [0..(length usernameColors)-1]
src/Types.hs view
@@ -40,11 +40,15 @@   , entryIsDMEntry   , ciHostname   , ciPort+  , ciUrlPath   , ciUsername   , ciPassword+  , ciType+  , ciAccessToken   , Config(..)   , HelpScreen(..)   , PasswordSource(..)+  , TokenSource(..)   , MatchType(..)   , Mode(..)   , ChannelSelectPattern(..)@@ -76,6 +80,7 @@   , csShowChannelList   , csPostMap   , csRecentChannel+  , csReturnChannel   , csPostListOverlay   , csUserListOverlay   , csChannelListOverlay@@ -224,6 +229,7 @@   , isMine   , setUserStatus   , myUser+  , myUsername   , myUserId   , myTeamId   , usernameForUserId@@ -284,7 +290,7 @@ import           Data.List ( sortBy, nub, elemIndex ) import qualified Data.Sequence as Seq import qualified Data.Text as T-import           Data.Time.Clock ( UTCTime, getCurrentTime, addUTCTime )+import           Data.Time.Clock ( getCurrentTime, addUTCTime ) import           Data.UUID ( UUID ) import qualified Data.Vector as Vec import           Lens.Micro.Platform ( at, makeLenses, lens, (%~), (^?!), (.=)@@ -326,6 +332,12 @@     | PasswordCommand Text     deriving (Eq, Read, Show) +-- | An access token source.+data TokenSource =+    TokenString Text+    | TokenCommand Text+    deriving (Eq, Read, Show)+ -- | The type of channel list group headings. data ChannelListGroup =     ChannelGroupPublicChannels@@ -355,8 +367,12 @@            -- ^ The team name to use when connecting.            , configPort :: Int            -- ^ The port to use when connecting.+           , configUrlPath :: Maybe Text+           -- ^ The server path to use when connecting.            , configPass :: Maybe PasswordSource            -- ^ The password source to use when connecting.+           , configToken :: Maybe TokenSource+           -- ^ The token source to use when connecting.            , configTimeFormat :: Maybe Text            -- ^ The format string for timestamps.            , configDateFormat :: Maybe Text@@ -646,11 +662,17 @@ -- necessary to start a connection with a Mattermost server. This is -- built up during interactive authentication and then is used to log -- in.+--+-- If the access token field is non-empty, that value is used and the+-- username and password values are ignored. data ConnectionInfo =     ConnectionInfo { _ciHostname :: Text                    , _ciPort     :: Int+                   , _ciUrlPath  :: Text                    , _ciUsername :: Text                    , _ciPassword :: Text+                   , _ciAccessToken :: Text+                   , _ciType     :: ConnectionType                    }  -- | We want to continue referring to posts by their IDs, but we don't@@ -1231,12 +1253,15 @@               , _csShowMessagePreview :: Bool               -- ^ Whether to show the message preview area.               , _csShowChannelList :: Bool-              -- ^ Whether to show the channe list.+              -- ^ Whether to show the channel list.               , _csChannelSelectState :: ChannelSelectState               -- ^ The state of the user's input and selection for               -- channel selection mode.               , _csRecentChannel :: Maybe ChannelId               -- ^ The most recently-selected channel, if any.+              , _csReturnChannel :: Maybe ChannelId+              -- ^ The channel to return to after visiting one or more+              -- unread channels.               , _csUrlList :: List Name LinkChoice               -- ^ The URL list used to show URLs drawn from messages in               -- a channel.@@ -1317,6 +1342,7 @@                      , _csShowChannelList             = configShowChannelList $ _crConfiguration startupStateResources                      , _csChannelSelectState          = emptyChannelSelectState                      , _csRecentChannel               = Nothing+                     , _csReturnChannel               = Nothing                      , _csUrlList                     = list UrlList mempty 2                      , _csConnectionStatus            = Connected                      , _csWorkerIsBusy                = Nothing@@ -1875,6 +1901,9 @@  myUser :: ChatState -> User myUser st = st^.csMe++myUsername :: ChatState -> Text+myUsername st = userUsername $ st^.csMe  -- BEWARE: you probably don't want this, but instead -- State.Users.withFetchedUser, since this only looks up users in the
src/Types/Channels.hs view
@@ -78,7 +78,7 @@ import           Types.Messages ( Messages, noMessages, addMessage                                 , clientMessageToMessage, Message, MessageType ) import           Types.Posts ( ClientMessageType(UnknownGapBefore)-                             , newClientMessage, postIsLeave, postIsJoin )+                             , newClientMessage ) import           Types.Users ( TypingUsers, noTypingUsers, addTypingUser ) import           Types.Common @@ -368,9 +368,7 @@ -- | Adjust updated time based on a message, ensuring that the updated -- time does not move backward. adjustUpdated :: Post -> ClientChannel -> ClientChannel-adjustUpdated m-  | postIsLeave m || postIsJoin m = id-  | otherwise =+adjustUpdated m =     ccInfo.cdUpdated %~ max (maxPostTimestamp m)  adjustEditedThreshold :: Post -> ClientChannel -> ClientChannel
src/Windows/ViewMessage.hs view
@@ -23,7 +23,6 @@ import           Events.Keybindings import           Themes import           Types-import           Types.Messages ( findMessage ) import           Markdown import           Draw.Messages ( nameForUserRef ) @@ -113,7 +112,7 @@         hs = getHighlightSet st          usernameText uids =-            renderText' hs $+            renderText' (myUsername st) hs $             T.intercalate ", " $             fmap (userSigil <>) $             catMaybes (lookupUsername <$> F.toList uids)@@ -145,6 +144,7 @@                                  , mdThreadState       = NoThread                                  , mdShowReactions     = False                                  , mdMessageWidthLimit = Just vpWidth+                                 , mdMyUsername        = myUsername st                                  }             in renderMessage md 
syntax/agda.xml view
@@ -3,7 +3,7 @@   <!ENTITY charsdelim "_;.&#34;(){}@">   <!ENTITY wordsep "(?=([&charsdelim;]|\s|$))"> ]>-<language name="Agda" version="5" kateversion="5.0" section="Sources" extensions="*.agda" mimetype="text/x-agda" author="Matthias C. M. Troffaes" license="LGPL">+<language name="Agda" version="6" kateversion="5.0" section="Sources" extensions="*.agda" mimetype="text/x-agda" author="Matthias C. M. Troffaes" license="LGPL">   <highlighting>     <list name="reserved keywords">       <item>abstract</item>@@ -11,6 +11,8 @@       <item>coinductive</item>       <item>constructor</item>       <item>data</item>+      <item>do</item>+      <item>eta-equality</item>       <item>field</item>       <item>forall</item>       <item>hiding</item>@@ -20,25 +22,33 @@       <item>infix</item>       <item>infixl</item>       <item>infixr</item>+      <item>instance</item>       <item>let</item>+      <item>macro</item>+      <item>module</item>+      <item>mutual</item>+      <item>no-eta-equality</item>       <item>open</item>+      <item>overlap</item>       <item>pattern</item>       <item>postulate</item>       <item>primitive</item>       <item>private</item>       <item>public</item>-      <item>module</item>-      <item>mutual</item>       <item>quote</item>       <item>quoteGoal</item>       <item>quoteTerm</item>       <item>record</item>       <item>renaming</item>       <item>rewrite</item>+      <item>tactic</item>       <item>syntax</item>       <item>to</item>       <item>unquote</item>+      <item>unquoteDecl</item>+      <item>unquoteDef</item>       <item>using</item>+      <item>variable</item>       <item>where</item>       <item>with</item>     </list>@@ -46,7 +56,7 @@       <context attribute="Normal" lineEndContext="#stay" name="code">         <RegExpr attribute="Pragma"  context="#stay" String="\{-#.*#-\}" />         <keyword attribute="Keyword" context="#stay" String="reserved keywords" />-        <RegExpr attribute="Type"    context="#stay" String="(Prop|Set[₀-₉]+|Set[0-9]*)&wordsep;" />+        <RegExpr attribute="Type"    context="#stay" String="(Prop[₀-₉]+|Prop[0-9]*|Set[₀-₉]+|Set[0-9]*)&wordsep;" />         <RegExpr attribute="Special" context="#stay" String="(-&gt;|→|∀|λ|:|=|\|)&wordsep;" />         <RegExpr attribute="Float"   context="#stay" String="\d+\.\d+&wordsep;" />         <RegExpr attribute="Decimal" context="#stay" String="[0-9]+&wordsep;" />
syntax/c.xml view
@@ -5,9 +5,12 @@     <!ENTITY hex_int "(?:[0-9A-Fa-f](?:'?[0-9A-Fa-f]+)*)">     <!ENTITY exp_float "(?:[eE][+-]?&int;)">     <!ENTITY exp_hexfloat "(?:[pP][-+]?&int;)">++    <!ENTITY ispphash "(?:#|&#37;\:|\?\?=)">+    <!ENTITY pphash "&ispphash;\s*"> ]> <language name="C" section="Sources"-          version="6" kateversion="5.0"+          version="7" kateversion="5.0"           indenter="cstyle"           extensions="*.c;*.C;*.h"           mimetype="text/x-csrc;text/x-c++src;text/x-chdr"@@ -116,8 +119,8 @@     <contexts>       <context attribute="Normal Text" lineEndContext="#stay" name="Normal">         <DetectSpaces />-	<RegExpr attribute="Preprocessor" context="Outscoped" String="#\s*if\s+0\s*$" beginRegion="PP" firstNonSpace="true" />-        <DetectChar context="AfterHash" char="#" firstNonSpace="true" lookAhead="true" />+	<RegExpr attribute="Preprocessor" context="Outscoped" String="&pphash;if\s+0\s*$" beginRegion="PP" firstNonSpace="true" />+        <RegExpr context="AfterHash" String="&ispphash;" firstNonSpace="true" lookAhead="true" />         <StringDetect attribute="Region Marker" context="Region Marker" String="//BEGIN" beginRegion="Region1" firstNonSpace="true" />         <StringDetect attribute="Region Marker" context="Region Marker" String="//END" endRegion="Region1" firstNonSpace="true" />         <keyword attribute="Control Flow" context="#stay" String="controlflow"/>@@ -126,6 +129,8 @@         <DetectIdentifier />         <DetectChar attribute="Symbol" context="#stay" char="{" beginRegion="Brace1" />         <DetectChar attribute="Symbol" context="#stay" char="}" endRegion="Brace1" />+        <Detect2Chars attribute="Symbol" context="#stay" char="&lt;" char1="%" beginRegion="Brace1" /> <!-- Digraph: { -->+        <Detect2Chars attribute="Symbol" context="#stay" char="%" char1="&gt;" endRegion="Brace1" /> <!-- Digraph: } -->          <!-- Match numbers -->         <RegExpr attribute="Decimal" context="Number" String="\.?[0-9]" lookAhead="true" />@@ -158,19 +163,19 @@       </context>        <context attribute="Error" lineEndContext="#pop" name="AfterHash">-        <RegExpr attribute="Preprocessor" context="Include" String="#\s*(?:include|include_next)" insensitive="true" firstNonSpace="true" />+        <RegExpr attribute="Preprocessor" context="Include" String="&pphash;(?:include|include_next)" insensitive="true" firstNonSpace="true" />          <!-- define, elif, else, endif, error, if, ifdef, ifndef, line, pragma, undef, warning -->-        <RegExpr attribute="Preprocessor" context="Preprocessor" String="#\s*if(?:def|ndef)?(?=\s+\S)" insensitive="true" beginRegion="PP" firstNonSpace="true" />-        <RegExpr attribute="Preprocessor" context="Preprocessor" String="#\s*endif" insensitive="true" endRegion="PP" firstNonSpace="true" />-        <RegExpr attribute="Preprocessor" context="Define" String="#\s*define.*((?=\\))" insensitive="true" firstNonSpace="true" />+        <RegExpr attribute="Preprocessor" context="Preprocessor" String="&pphash;if(?:def|ndef)?(?=\s+\S)" insensitive="true" beginRegion="PP" firstNonSpace="true" />+        <RegExpr attribute="Preprocessor" context="Preprocessor" String="&pphash;endif" insensitive="true" endRegion="PP" firstNonSpace="true" />+        <RegExpr attribute="Preprocessor" context="Define" String="&pphash;define.*((?=\\))" insensitive="true" firstNonSpace="true" />          <!-- folding for apple style #pragma mark - label -->-        <RegExpr attribute="Preprocessor" context="Preprocessor" String="#\s*pragma\s+mark\s+-\s*$" insensitive="true" firstNonSpace="true" endRegion="pragma_mark" />-        <RegExpr attribute="Preprocessor" context="Preprocessor" String="#\s*pragma\s+mark" insensitive="true" firstNonSpace="true" endRegion="pragma_mark" beginRegion="pragma_mark" />+        <RegExpr attribute="Preprocessor" context="Preprocessor" String="&pphash;pragma\s+mark\s+-\s*$" insensitive="true" firstNonSpace="true" endRegion="pragma_mark" />+        <RegExpr attribute="Preprocessor" context="Preprocessor" String="&pphash;pragma\s+mark" insensitive="true" firstNonSpace="true" endRegion="pragma_mark" beginRegion="pragma_mark" /> -        <RegExpr attribute="Preprocessor" context="Preprocessor" String="#\s*(?:el(?:se|if)|define|undef|line|error|warning|pragma)" insensitive="true" firstNonSpace="true" />-        <RegExpr attribute="Preprocessor" context="Preprocessor" String="#\s+[0-9]+" insensitive="true" firstNonSpace="true" />+        <RegExpr attribute="Preprocessor" context="Preprocessor" String="&pphash;(?:el(?:se|if)|define|undef|line|error|warning|pragma)" insensitive="true" firstNonSpace="true" />+        <RegExpr attribute="Preprocessor" context="Preprocessor" String="&ispphash;\s+[0-9]+" insensitive="true" firstNonSpace="true" />       </context>        <context attribute="Preprocessor" lineEndContext="#pop" name="Include">@@ -203,9 +208,9 @@         <IncludeRules context="##Doxygen" />         <Detect2Chars attribute="Comment" context="Commentar 1" char="/" char1="/"/>         <Detect2Chars attribute="Comment" context="Commentar 2" char="/" char1="*" beginRegion="Comment"/>-        <RegExpr attribute="Comment" context="Outscoped intern" String="#\s*if" beginRegion="PP" firstNonSpace="true" />-        <RegExpr attribute="Preprocessor" context="#pop" String="#\s*el(?:se|if)" firstNonSpace="true" />-        <RegExpr attribute="Preprocessor" context="#pop" String="#\s*endif" endRegion="PP" firstNonSpace="true" />+        <RegExpr attribute="Comment" context="Outscoped intern" String="&pphash;if" beginRegion="PP" firstNonSpace="true" />+        <RegExpr attribute="Preprocessor" context="#pop" String="&pphash;el(?:se|if)" firstNonSpace="true" />+        <RegExpr attribute="Preprocessor" context="#pop" String="&pphash;endif" endRegion="PP" firstNonSpace="true" />       </context>        <context attribute="Comment" lineEndContext="#stay" name="Outscoped intern">@@ -216,8 +221,8 @@         <IncludeRules context="##Doxygen" />         <Detect2Chars attribute="Comment" context="Commentar 1" char="/" char1="/"/>         <Detect2Chars attribute="Comment" context="Commentar 2" char="/" char1="*" beginRegion="Comment"/>-        <RegExpr attribute="Comment" context="Outscoped intern" String="#\s*if" beginRegion="PP" firstNonSpace="true" />-        <RegExpr attribute="Comment" context="#pop" String="#\s*endif" endRegion="PP" firstNonSpace="true" />+        <RegExpr attribute="Comment" context="Outscoped intern" String="&pphash;if" beginRegion="PP" firstNonSpace="true" />+        <RegExpr attribute="Comment" context="#pop" String="&pphash;endif" endRegion="PP" firstNonSpace="true" />       </context>        <context name="Number" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">
syntax/cmake.xml view
@@ -9,7 +9,7 @@   Copyright 2004 Alexander Neundorf (neundorf@kde.org)   Copyright 2005 Dominik Haumann (dhdev@gmx.de)   Copyright 2007,2008,2013,2014 Matthew Woehlke (mw_triad@users.sourceforge.net)-  Copyright 2013-2015,2017-2018 Alex Turbov (i.zaufi@gmail.com)+  Copyright 2013-2015,2017-2019 Alex Turbov (i.zaufi@gmail.com)   **********************************************************************  * This library is free software; you can redistribute it and/or      *@@ -31,7 +31,7 @@  <language     name="CMake"-    version="11"+    version="19"     kateversion="2.4"     section="Other"     extensions="CMakeLists.txt;*.cmake;*.cmake.in"@@ -133,6 +133,7 @@         <item>target_link_directories</item>         <item>target_link_libraries</item>         <item>target_link_options</item>+        <item>target_precompile_headers</item>         <item>target_sources</item>         <item>try_compile</item>         <item>try_run</item>@@ -248,6 +249,7 @@     </list>     <list name="execute_process_nargs">       <item>COMMAND</item>+      <item>COMMAND_ECHO</item>       <item>ENCODING</item>       <item>ERROR_FILE</item>       <item>ERROR_QUIET</item>@@ -268,6 +270,8 @@       <item>AUTO</item>       <item>NONE</item>       <item>OEM</item>+      <item>STDERR</item>+      <item>STDOUT</item>       <item>UTF8</item>     </list>     <list name="file_nargs">@@ -287,7 +291,9 @@       <item>FILES_MATCHING</item>       <item>FILE_PERMISSIONS</item>       <item>FOLLOW_SYMLINKS</item>+      <item>FOLLOW_SYMLINK_CHAIN</item>       <item>GENERATE</item>+      <item>GET_RUNTIME_DEPENDENCIES</item>       <item>GLOB</item>       <item>GLOB_RECURSE</item>       <item>GUARD</item>@@ -317,6 +323,7 @@       <item>PATTERN</item>       <item>PERMISSIONS</item>       <item>READ</item>+      <item>READ_SYMLINK</item>       <item>REGEX</item>       <item>RELATIVE</item>       <item>RELATIVE_PATH</item>@@ -335,6 +342,7 @@       <item>SHA3_512</item>       <item>SHA512</item>       <item>SHOW_PROGRESS</item>+      <item>SIZE</item>       <item>STATUS</item>       <item>STRINGS</item>       <item>TIMEOUT</item>@@ -474,6 +482,13 @@       <item>LISTS</item>       <item>RANGE</item>     </list>+    <list name="get_cmake_property_sargs">+      <item>CACHE_VARIABLES</item>+      <item>COMMANDS</item>+      <item>COMPONENTS</item>+      <item>MACROS</item>+      <item>VARIABLES</item>+    </list>     <list name="get_directory_property_nargs">       <item>DEFINITION</item>       <item>DIRECTORY</item>@@ -484,8 +499,10 @@       <item>CACHE</item>       <item>DIRECTORY</item>       <item>EXT</item>+      <item>LAST_EXT</item>       <item>NAME</item>       <item>NAME_WE</item>+      <item>NAME_WLE</item>       <item>PATH</item>       <item>PROGRAM</item>       <item>PROGRAM_ARGS</item>@@ -563,6 +580,8 @@       <item>LENGTH</item>       <item>ORDER</item>       <item>OUTPUT_VARIABLE</item>+      <item>POP_BACK</item>+      <item>POP_FRONT</item>       <item>PREPEND</item>       <item>REGEX</item>       <item>REMOVE_AT</item>@@ -598,10 +617,14 @@     </list>     <list name="message_nargs">       <item>AUTHOR_WARNING</item>+      <item>DEBUG</item>       <item>DEPRECATION</item>       <item>FATAL_ERROR</item>+      <item>NOTICE</item>       <item>SEND_ERROR</item>       <item>STATUS</item>+      <item>TRACE</item>+      <item>VERBOSE</item>       <item>WARNING</item>     </list>     <list name="separate_arguments_nargs">@@ -667,6 +690,7 @@       <item>RANDOM</item>       <item>RANDOM_SEED</item>       <item>REGEX</item>+      <item>REPEAT</item>       <item>REPLACE</item>       <item>REVERSE</item>       <item>SHA1</item>@@ -733,6 +757,7 @@       <item>DEPENDS</item>       <item>DEPFILE</item>       <item>IMPLICIT_DEPENDS</item>+      <item>JOB_POOL</item>       <item>MAIN_DEPENDENCY</item>       <item>OUTPUT</item>       <item>POST_BUILD</item>@@ -753,6 +778,7 @@       <item>DEPENDS</item>       <item>DEPFILE</item>       <item>IMPLICIT_DEPENDS</item>+      <item>JOB_POOL</item>       <item>SOURCES</item>       <item>USES_TERMINAL</item>       <item>VERBATIM</item>@@ -783,6 +809,7 @@     </list>     <list name="add_test_nargs">       <item>COMMAND</item>+      <item>COMMAND_EXPAND_LISTS</item>       <item>CONFIGURATIONS</item>       <item>NAME</item>       <item>WORKING_DIRECTORY</item>@@ -811,10 +838,20 @@       <item>OPTIONAL</item>     </list>     <list name="enable_language_sargs">+      <item>ASM</item>+      <item>ASM-ATT</item>+      <item>ASM_MASM</item>+      <item>ASM_NASM</item>       <item>C</item>+      <item>CSharp</item>+      <item>CUDA</item>       <item>CXX</item>       <item>Fortran</item>+      <item>Java</item>+      <item>OBJC</item>+      <item>OBJCXX</item>       <item>RC</item>+      <item>Swift</item>     </list>     <list name="export_nargs">       <item>ANDROID_MK</item>@@ -911,12 +948,20 @@     </list>     <list name="project_sargs">       <item>ASM</item>+      <item>ASM-ATT</item>+      <item>ASM_MASM</item>+      <item>ASM_NASM</item>       <item>C</item>+      <item>CSharp</item>       <item>CUDA</item>       <item>CXX</item>       <item>Fortran</item>+      <item>Java</item>       <item>NONE</item>+      <item>OBJC</item>+      <item>OBJCXX</item>       <item>RC</item>+      <item>Swift</item>     </list>     <list name="set_source_files_properties_nargs">       <item>PROPERTIES</item>@@ -1043,6 +1088,12 @@       <item>PRIVATE</item>       <item>PUBLIC</item>     </list>+    <list name="target_precompile_headers_nargs">+      <item>INTERFACE</item>+      <item>PRIVATE</item>+      <item>PUBLIC</item>+      <item>REUSE_FROM</item>+    </list>     <list name="target_sources_nargs">       <item>INTERFACE</item>       <item>PRIVATE</item>@@ -1054,6 +1105,7 @@       <item>COPY_FILE</item>       <item>COPY_FILE_ERROR</item>       <item>LINK_LIBRARIES</item>+      <item>LINK_OPTIONS</item>       <item>OUTPUT_VARIABLE</item>       <item>RESULT_VAR</item>       <item>SOURCES</item>@@ -1065,6 +1117,7 @@       <item>COMPILE_OUTPUT_VARIABLE</item>       <item>COMPILE_RESULT_VAR</item>       <item>LINK_LIBRARIES</item>+      <item>LINK_OPTIONS</item>       <item>OUTPUT_VARIABLE</item>       <item>RUN_OUTPUT_VARIABLE</item>       <item>RUN_RESULT_VAR</item>@@ -1129,6 +1182,7 @@       <item>TRACK</item>     </list>     <list name="ctest_submit_nargs">+      <item>BUILD_ID</item>       <item>CDASH_UPLOAD</item>       <item>CDASH_UPLOAD_TYPE</item>       <item>FILES</item>@@ -1138,6 +1192,7 @@       <item>RETRY_COUNT</item>       <item>RETRY_DELAY</item>       <item>RETURN_VALUE</item>+      <item>SUBMIT_URL</item>     </list>     <list name="ctest_test_nargs">       <item>APPEND</item>@@ -1208,12 +1263,13 @@       <item>CMAKE_AR</item>       <item>CMAKE_ARCHIVE_OUTPUT_DIRECTORY</item>       <item>CMAKE_ARGC</item>-      <item>CMAKE_ARGV0</item>+      <item>CMAKE_AUTOGEN_ORIGIN_DEPENDS</item>       <item>CMAKE_AUTOGEN_PARALLEL</item>       <item>CMAKE_AUTOGEN_VERBOSE</item>       <item>CMAKE_AUTOMOC</item>       <item>CMAKE_AUTOMOC_DEPEND_FILTERS</item>       <item>CMAKE_AUTOMOC_MOC_OPTIONS</item>+      <item>CMAKE_AUTOMOC_PATH_PREFIX</item>       <item>CMAKE_AUTOMOC_RELAXED_MODE</item>       <item>CMAKE_AUTORCC</item>       <item>CMAKE_AUTORCC_OPTIONS</item>@@ -1223,6 +1279,7 @@       <item>CMAKE_BACKWARDS_COMPATIBILITY</item>       <item>CMAKE_BINARY_DIR</item>       <item>CMAKE_BUILD_RPATH</item>+      <item>CMAKE_BUILD_RPATH_USE_ORIGIN</item>       <item>CMAKE_BUILD_TOOL</item>       <item>CMAKE_BUILD_TYPE</item>       <item>CMAKE_BUILD_WITH_INSTALL_NAME_DIR</item>@@ -1248,6 +1305,7 @@       <item>CMAKE_CROSSCOMPILING_EMULATOR</item>       <item>CMAKE_CTEST_COMMAND</item>       <item>CMAKE_CUDA_EXTENSIONS</item>+      <item>CMAKE_CUDA_RESOLVE_DEVICE_SYMBOLS</item>       <item>CMAKE_CUDA_SEPARABLE_COMPILATION</item>       <item>CMAKE_CUDA_STANDARD</item>       <item>CMAKE_CUDA_STANDARD_REQUIRED</item>@@ -1274,16 +1332,19 @@       <item>CMAKE_ECLIPSE_GENERATE_LINKED_RESOURCES</item>       <item>CMAKE_ECLIPSE_GENERATE_SOURCE_PROJECT</item>       <item>CMAKE_ECLIPSE_MAKE_ARGUMENTS</item>+      <item>CMAKE_ECLIPSE_RESOURCE_ENCODING</item>       <item>CMAKE_ECLIPSE_VERSION</item>       <item>CMAKE_EDIT_COMMAND</item>       <item>CMAKE_ENABLE_EXPORTS</item>       <item>CMAKE_ERROR_DEPRECATED</item>       <item>CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION</item>       <item>CMAKE_EXECUTABLE_SUFFIX</item>+      <item>CMAKE_EXECUTE_PROCESS_COMMAND_ECHO</item>       <item>CMAKE_EXE_LINKER_FLAGS</item>       <item>CMAKE_EXE_LINKER_FLAGS_INIT</item>       <item>CMAKE_EXPORT_COMPILE_COMMANDS</item>       <item>CMAKE_EXPORT_NO_PACKAGE_REGISTRY</item>+      <item>CMAKE_EXPORT_PACKAGE_REGISTRY</item>       <item>CMAKE_EXTRA_GENERATOR</item>       <item>CMAKE_EXTRA_INCLUDE_FILES</item>       <item>CMAKE_EXTRA_SHARED_LIBRARY_SUFFIXES</item>@@ -1297,6 +1358,8 @@       <item>CMAKE_FIND_PACKAGE_NAME</item>       <item>CMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY</item>       <item>CMAKE_FIND_PACKAGE_NO_SYSTEM_PACKAGE_REGISTRY</item>+      <item>CMAKE_FIND_PACKAGE_PREFER_CONFIG</item>+      <item>CMAKE_FIND_PACKAGE_RESOLVE_SYMLINKS</item>       <item>CMAKE_FIND_PACKAGE_SORT_DIRECTION</item>       <item>CMAKE_FIND_PACKAGE_SORT_ORDER</item>       <item>CMAKE_FIND_PACKAGE_WARN_NO_MODULE</item>@@ -1305,7 +1368,15 @@       <item>CMAKE_FIND_ROOT_PATH_MODE_LIBRARY</item>       <item>CMAKE_FIND_ROOT_PATH_MODE_PACKAGE</item>       <item>CMAKE_FIND_ROOT_PATH_MODE_PROGRAM</item>+      <item>CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH</item>+      <item>CMAKE_FIND_USE_CMAKE_PATH</item>+      <item>CMAKE_FIND_USE_CMAKE_SYSTEM_PATH</item>+      <item>CMAKE_FIND_USE_PACKAGE_REGISTRY</item>+      <item>CMAKE_FIND_USE_PACKAGE_ROOT_PATH</item>+      <item>CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH</item>+      <item>CMAKE_FIND_USE_SYSTEM_PACKAGE_REGISTRY</item>       <item>CMAKE_FOLDER</item>+      <item>CMAKE_FRAMEWORK</item>       <item>CMAKE_FRAMEWORK_PATH</item>       <item>CMAKE_Fortran_FORMAT</item>       <item>CMAKE_Fortran_MODDIR_DEFAULT</item>@@ -1316,6 +1387,10 @@       <item>CMAKE_GENERATOR_INSTANCE</item>       <item>CMAKE_GENERATOR_PLATFORM</item>       <item>CMAKE_GENERATOR_TOOLSET</item>+      <item>CMAKE_GLOBAL_AUTOGEN_TARGET</item>+      <item>CMAKE_GLOBAL_AUTOGEN_TARGET_NAME</item>+      <item>CMAKE_GLOBAL_AUTORCC_TARGET</item>+      <item>CMAKE_GLOBAL_AUTORCC_TARGET_NAME</item>       <item>CMAKE_GNUtoMS</item>       <item>CMAKE_HAS_ANSI_STRING_STREAM</item>       <item>CMAKE_HOME_DIRECTORY</item>@@ -1374,6 +1449,7 @@       <item>CMAKE_INSTALL_OPENMP_LIBRARIES</item>       <item>CMAKE_INSTALL_PREFIX</item>       <item>CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT</item>+      <item>CMAKE_INSTALL_REMOVE_ENVIRONMENT_RPATH</item>       <item>CMAKE_INSTALL_RPATH</item>       <item>CMAKE_INSTALL_RPATH_USE_LINK_PATH</item>       <item>CMAKE_INSTALL_RUNSTATEDIR</item>@@ -1412,12 +1488,16 @@       <item>CMAKE_MAJOR_VERSION</item>       <item>CMAKE_MAKE_PROGRAM</item>       <item>CMAKE_MATCH_COUNT</item>+      <item>CMAKE_MAXIMUM_RECURSION_DEPTH</item>+      <item>CMAKE_MESSAGE_INDENT</item>       <item>CMAKE_MFC_FLAG</item>       <item>CMAKE_MINIMUM_REQUIRED_VERSION</item>       <item>CMAKE_MINOR_VERSION</item>       <item>CMAKE_MODULE_LINKER_FLAGS</item>       <item>CMAKE_MODULE_LINKER_FLAGS_INIT</item>       <item>CMAKE_MODULE_PATH</item>+      <item>CMAKE_MSVCIDE_RUN_PATH</item>+      <item>CMAKE_MSVC_RUNTIME_LIBRARY</item>       <item>CMAKE_NETRC</item>       <item>CMAKE_NETRC_FILE</item>       <item>CMAKE_NINJA_OUTPUT_PATH_PREFIX</item>@@ -1440,6 +1520,8 @@       <item>CMAKE_PROGRAM_PATH</item>       <item>CMAKE_PROJECT_DESCRIPTION</item>       <item>CMAKE_PROJECT_HOMEPAGE_URL</item>+      <item>CMAKE_PROJECT_INCLUDE</item>+      <item>CMAKE_PROJECT_INCLUDE_BEFORE</item>       <item>CMAKE_PROJECT_NAME</item>       <item>CMAKE_PROJECT_VERSION</item>       <item>CMAKE_PROJECT_VERSION_MAJOR</item>@@ -1451,6 +1533,7 @@       <item>CMAKE_REQUIRED_FLAGS</item>       <item>CMAKE_REQUIRED_INCLUDES</item>       <item>CMAKE_REQUIRED_LIBRARIES</item>+      <item>CMAKE_REQUIRED_LINK_OPTIONS</item>       <item>CMAKE_REQUIRED_QUIET</item>       <item>CMAKE_ROOT</item>       <item>CMAKE_RUNTIME_OUTPUT_DIRECTORY</item>@@ -1495,6 +1578,7 @@       <item>CMAKE_SYSTEM_PROGRAM_PATH</item>       <item>CMAKE_SYSTEM_VERSION</item>       <item>CMAKE_Swift_LANGUAGE_VERSION</item>+      <item>CMAKE_Swift_MODULE_DIRECTORY</item>       <item>CMAKE_THREAD_LIBS_INIT</item>       <item>CMAKE_THREAD_PREFER_PTHREAD</item>       <item>CMAKE_TOOLCHAIN_FILE</item>@@ -1502,6 +1586,8 @@       <item>CMAKE_TRY_COMPILE_PLATFORM_VARIABLES</item>       <item>CMAKE_TRY_COMPILE_TARGET_TYPE</item>       <item>CMAKE_TWEAK_VERSION</item>+      <item>CMAKE_UNITY_BUILD</item>+      <item>CMAKE_UNITY_BUILD_BATCH_SIZE</item>       <item>CMAKE_USER_MAKE_RULES_OVERRIDE</item>       <item>CMAKE_USE_PTHREADS_INIT</item>       <item>CMAKE_USE_RELATIVE_PATHS</item>@@ -1515,6 +1601,7 @@       <item>CMAKE_VS_INCLUDE_INSTALL_TO_DEFAULT_BUILD</item>       <item>CMAKE_VS_INCLUDE_PACKAGE_TO_DEFAULT_BUILD</item>       <item>CMAKE_VS_INTEL_Fortran_PROJECT_VERSION</item>+      <item>CMAKE_VS_JUST_MY_CODE_DEBUGGING</item>       <item>CMAKE_VS_MSBUILD_COMMAND</item>       <item>CMAKE_VS_NsightTegra_VERSION</item>       <item>CMAKE_VS_PLATFORM_NAME</item>@@ -1538,6 +1625,7 @@       <item>CMAKE_XCODE_PLATFORM_TOOLSET</item>       <item>CMAKE_XCODE_SCHEME_ADDRESS_SANITIZER</item>       <item>CMAKE_XCODE_SCHEME_ADDRESS_SANITIZER_USE_AFTER_RETURN</item>+      <item>CMAKE_XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING</item>       <item>CMAKE_XCODE_SCHEME_DISABLE_MAIN_THREAD_CHECKER</item>       <item>CMAKE_XCODE_SCHEME_DYNAMIC_LIBRARY_LOADS</item>       <item>CMAKE_XCODE_SCHEME_DYNAMIC_LINKER_API_USAGE</item>@@ -1644,6 +1732,7 @@       <item>CPACK_IFW_PACKAGE_REMOVE_TARGET_DIR</item>       <item>CPACK_IFW_PACKAGE_RESOURCES</item>       <item>CPACK_IFW_PACKAGE_START_MENU_DIRECTORY</item>+      <item>CPACK_IFW_PACKAGE_STYLE_SHEET</item>       <item>CPACK_IFW_PACKAGE_TITLE</item>       <item>CPACK_IFW_PACKAGE_TITLE_COLOR</item>       <item>CPACK_IFW_PACKAGE_WATERMARK</item>@@ -1664,6 +1753,7 @@       <item>CPACK_INSTALL_COMMANDS</item>       <item>CPACK_INSTALL_DEFAULT_DIRECTORY_PERMISSIONS</item>       <item>CPACK_INSTALL_SCRIPT</item>+      <item>CPACK_INSTALL_SCRIPTS</item>       <item>CPACK_MONOLITHIC_INSTALL</item>       <item>CPACK_NSIS_COMPRESSOR</item>       <item>CPACK_NSIS_CONTACT</item>@@ -1719,6 +1809,7 @@       <item>CPACK_PACKAGE_INSTALL_DIRECTORY</item>       <item>CPACK_PACKAGE_INSTALL_REGISTRY_KEY</item>       <item>CPACK_PACKAGE_NAME</item>+      <item>CPACK_PACKAGE_RELOCATABLE</item>       <item>CPACK_PACKAGE_VENDOR</item>       <item>CPACK_PACKAGE_VERSION</item>       <item>CPACK_PACKAGE_VERSION_MAJOR</item>@@ -1884,6 +1975,7 @@       <item>CTEST_SCP_COMMAND</item>       <item>CTEST_SITE</item>       <item>CTEST_SOURCE_DIRECTORY</item>+      <item>CTEST_SUBMIT_URL</item>       <item>CTEST_SVN_COMMAND</item>       <item>CTEST_SVN_OPTIONS</item>       <item>CTEST_SVN_UPDATE_OPTIONS</item>@@ -1893,6 +1985,7 @@       <item>CTEST_UPDATE_COMMAND</item>       <item>CTEST_UPDATE_OPTIONS</item>       <item>CTEST_UPDATE_VERSION_ONLY</item>+      <item>CTEST_UPDATE_VERSION_OVERRIDE</item>       <item>CTEST_USE_LAUNCHERS</item>       <item>CYGWIN</item>       <item>EXECUTABLE_OUTPUT_PATH</item>@@ -1964,6 +2057,8 @@       <item>PROJECT_VERSION_PATCH</item>       <item>PROJECT_VERSION_TWEAK</item>       <item>QTIFWDIR</item>+      <item>SWIG_OUTFILE_DIR</item>+      <item>SWIG_SOURCE_FILE_EXTENSIONS</item>       <item>THREADS_PREFER_PTHREAD_FLAG</item>       <item>UNIX</item>       <item>WIN32</item>@@ -1973,6 +2068,45 @@       <item>XCODE</item>       <item>XCODE_VERSION</item>     </list>++    <list name="environment-variables">+      <item>CC</item>+      <item>CFLAGS</item>+      <item>CMAKE_APPBUNDLE_PATH</item>+      <item>CMAKE_BUILD_PARALLEL_LEVEL</item>+      <item>CMAKE_CONFIG_TYPE</item>+      <item>CMAKE_FRAMEWORK_PATH</item>+      <item>CMAKE_GENERATOR</item>+      <item>CMAKE_GENERATOR_INSTANCE</item>+      <item>CMAKE_GENERATOR_PLATFORM</item>+      <item>CMAKE_GENERATOR_TOOLSET</item>+      <item>CMAKE_MSVCIDE_RUN_PATH</item>+      <item>CMAKE_NO_VERBOSE</item>+      <item>CMAKE_OSX_ARCHITECTURES</item>+      <item>CMAKE_PREFIX_PATH</item>+      <item>CSFLAGS</item>+      <item>CTEST_INTERACTIVE_DEBUG_MODE</item>+      <item>CTEST_OUTPUT_ON_FAILURE</item>+      <item>CTEST_PARALLEL_LEVEL</item>+      <item>CTEST_PROGRESS_OUTPUT</item>+      <item>CTEST_USE_LAUNCHERS_DEFAULT</item>+      <item>CUDACXX</item>+      <item>CUDAFLAGS</item>+      <item>CUDAHOSTCXX</item>+      <item>CXX</item>+      <item>CXXFLAGS</item>+      <item>DASHBOARD_TEST_FROM_CTEST</item>+      <item>DESTDIR</item>+      <item>FC</item>+      <item>FFLAGS</item>+      <item>LDFLAGS</item>+      <item>MACOSX_DEPLOYMENT_TARGET</item>+      <item>PATH</item>+      <item>RC</item>+      <item>RCFLAGS</item>+      <item>SWIFTC</item>+      <item>VERBOSE</item>+    </list>     <list name="global-properties">       <item>ALLOW_DUPLICATE_CUSTOM_TARGETS</item>       <item>AUTOGEN_SOURCE_GROUP</item>@@ -1982,6 +2116,7 @@       <item>AUTORCC_SOURCE_GROUP</item>       <item>CMAKE_CXX_KNOWN_FEATURES</item>       <item>CMAKE_C_KNOWN_FEATURES</item>+      <item>CMAKE_ROLE</item>       <item>DEBUG_CONFIGURATIONS</item>       <item>DISABLED_FEATURES</item>       <item>ECLIPSE_EXTRA_NATURES</item>@@ -2014,6 +2149,7 @@       <item>XCODE_EMIT_EFFECTIVE_PLATFORM_NAME</item>     </list>     <list name="directory-properties">+      <item>ADDITIONAL_CLEAN_FILES</item>       <item>ADDITIONAL_MAKE_CLEAN_FILES</item>       <item>BINARY_DIR</item>       <item>BUILDSYSTEM_TARGETS</item>@@ -2046,6 +2182,7 @@       <item>VS_STARTUP_PROJECT</item>     </list>     <list name="target-properties">+      <item>ADDITIONAL_CLEAN_FILES</item>       <item>ALIASED_TARGET</item>       <item>ANDROID_ANT_ADDITIONAL_OPTIONS</item>       <item>ANDROID_API</item>@@ -2067,17 +2204,25 @@       <item>ARCHIVE_OUTPUT_DIRECTORY</item>       <item>ARCHIVE_OUTPUT_NAME</item>       <item>AUTOGEN_BUILD_DIR</item>+      <item>AUTOGEN_ORIGIN_DEPENDS</item>       <item>AUTOGEN_TARGET_DEPENDS</item>       <item>AUTOMOC</item>+      <item>AUTOMOC_COMPILER_PREDEFINES</item>       <item>AUTOMOC_DEPEND_FILTERS</item>+      <item>AUTOMOC_EXECUTABLE</item>+      <item>AUTOMOC_MACRO_NAMES</item>       <item>AUTOMOC_MOC_OPTIONS</item>+      <item>AUTOMOC_PATH_PREFIX</item>       <item>AUTORCC</item>+      <item>AUTORCC_EXECUTABLE</item>       <item>AUTORCC_OPTIONS</item>       <item>AUTOUIC</item>+      <item>AUTOUIC_EXECUTABLE</item>       <item>AUTOUIC_OPTIONS</item>       <item>AUTOUIC_SEARCH_PATHS</item>       <item>BINARY_DIR</item>       <item>BUILD_RPATH</item>+      <item>BUILD_RPATH_USE_ORIGIN</item>       <item>BUILD_WITH_INSTALL_NAME_DIR</item>       <item>BUILD_WITH_INSTALL_RPATH</item>       <item>BUNDLE</item>@@ -2109,6 +2254,7 @@       <item>DEFINE_SYMBOL</item>       <item>DEPLOYMENT_ADDITIONAL_FILES</item>       <item>DEPLOYMENT_REMOTE_DIRECTORY</item>+      <item>DISABLE_PRECOMPILE_HEADERS</item>       <item>DOTNET_TARGET_FRAMEWORK_VERSION</item>       <item>ENABLE_EXPORTS</item>       <item>EXCLUDE_FROM_ALL</item>@@ -2143,6 +2289,7 @@       <item>IMPORT_SUFFIX</item>       <item>INCLUDE_DIRECTORIES</item>       <item>INSTALL_NAME_DIR</item>+      <item>INSTALL_REMOVE_ENVIRONMENT_RPATH</item>       <item>INSTALL_RPATH</item>       <item>INSTALL_RPATH_USE_LINK_PATH</item>       <item>INTERFACE_AUTOUIC_OPTIONS</item>@@ -2155,6 +2302,7 @@       <item>INTERFACE_LINK_LIBRARIES</item>       <item>INTERFACE_LINK_OPTIONS</item>       <item>INTERFACE_POSITION_INDEPENDENT_CODE</item>+      <item>INTERFACE_PRECOMPILE_HEADERS</item>       <item>INTERFACE_SOURCES</item>       <item>INTERFACE_SYSTEM_INCLUDE_DIRECTORIES</item>       <item>INTERPROCEDURAL_OPTIMIZATION</item>@@ -2182,6 +2330,7 @@       <item>MACOSX_FRAMEWORK_INFO_PLIST</item>       <item>MACOSX_RPATH</item>       <item>MANUALLY_ADDED_DEPENDENCIES</item>+      <item>MSVC_RUNTIME_LIBRARY</item>       <item>NAME</item>       <item>NO_SONAME</item>       <item>NO_SYSTEM_FROM_IMPORTED</item>@@ -2190,6 +2339,8 @@       <item>PDB_NAME</item>       <item>PDB_OUTPUT_DIRECTORY</item>       <item>POSITION_INDEPENDENT_CODE</item>+      <item>PRECOMPILE_HEADERS</item>+      <item>PRECOMPILE_HEADERS_REUSE_FROM</item>       <item>PREFIX</item>       <item>PRIVATE_HEADER</item>       <item>PROJECT_LABEL</item>@@ -2207,7 +2358,14 @@       <item>STATIC_LIBRARY_FLAGS</item>       <item>STATIC_LIBRARY_OPTIONS</item>       <item>SUFFIX</item>+      <item>Swift_DEPENDENCIES_FILE</item>+      <item>Swift_MODULE_DIRECTORY</item>+      <item>Swift_MODULE_NAME</item>       <item>TYPE</item>+      <item>UNITY_BUILD</item>+      <item>UNITY_BUILD_BATCH_SIZE</item>+      <item>UNITY_BUILD_CODE_AFTER_INCLUDE</item>+      <item>UNITY_BUILD_CODE_BEFORE_INCLUDE</item>       <item>VERSION</item>       <item>VISIBILITY_INLINES_HIDDEN</item>       <item>VS_CONFIGURATION_TYPE</item>@@ -2219,13 +2377,18 @@       <item>VS_DOTNET_REFERENCES</item>       <item>VS_DOTNET_REFERENCES_COPY_LOCAL</item>       <item>VS_DOTNET_TARGET_FRAMEWORK_VERSION</item>+      <item>VS_DPI_AWARE</item>       <item>VS_GLOBAL_KEYWORD</item>       <item>VS_GLOBAL_PROJECT_TYPES</item>       <item>VS_GLOBAL_ROOTNAMESPACE</item>       <item>VS_IOT_EXTENSIONS_VERSION</item>       <item>VS_IOT_STARTUP_TASK</item>+      <item>VS_JUST_MY_CODE_DEBUGGING</item>       <item>VS_KEYWORD</item>       <item>VS_MOBILE_EXTENSIONS_VERSION</item>+      <item>VS_NO_SOLUTION_DEPLOY</item>+      <item>VS_PACKAGE_REFERENCES</item>+      <item>VS_PROJECT_IMPORT</item>       <item>VS_SCC_AUXPATH</item>       <item>VS_SCC_LOCALPATH</item>       <item>VS_SCC_PROJECTNAME</item>@@ -2239,10 +2402,13 @@       <item>WIN32_EXECUTABLE</item>       <item>WINDOWS_EXPORT_ALL_SYMBOLS</item>       <item>XCODE_EXPLICIT_FILE_TYPE</item>+      <item>XCODE_GENERATE_SCHEME</item>       <item>XCODE_PRODUCT_TYPE</item>       <item>XCODE_SCHEME_ADDRESS_SANITIZER</item>       <item>XCODE_SCHEME_ADDRESS_SANITIZER_USE_AFTER_RETURN</item>       <item>XCODE_SCHEME_ARGUMENTS</item>+      <item>XCODE_SCHEME_DEBUG_AS_ROOT</item>+      <item>XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING</item>       <item>XCODE_SCHEME_DISABLE_MAIN_THREAD_CHECKER</item>       <item>XCODE_SCHEME_DYNAMIC_LIBRARY_LOADS</item>       <item>XCODE_SCHEME_DYNAMIC_LINKER_API_USAGE</item>@@ -2283,7 +2449,11 @@       <item>SKIP_AUTOMOC</item>       <item>SKIP_AUTORCC</item>       <item>SKIP_AUTOUIC</item>+      <item>SKIP_PRECOMPILE_HEADERS</item>+      <item>SKIP_UNITY_BUILD_INCLUSION</item>       <item>SYMBOLIC</item>+      <item>Swift_DEPENDENCIES_FILE</item>+      <item>Swift_DIAGNOSTICS_FILE</item>       <item>VS_COPY_TO_OUT_DIR</item>       <item>VS_DEPLOYMENT_CONTENT</item>       <item>VS_DEPLOYMENT_LOCATION</item>@@ -2324,6 +2494,7 @@       <item>REQUIRED_FILES</item>       <item>RESOURCE_LOCK</item>       <item>RUN_SERIAL</item>+      <item>SKIP_REGULAR_EXPRESSION</item>       <item>SKIP_RETURN_CODE</item>       <item>TIMEOUT</item>       <item>TIMEOUT_AFTER_MATCH</item>@@ -2350,61 +2521,76 @@     <list name="generator-expressions">       <item>0</item>       <item>1</item>-      <item>AND</item>-      <item>ANGLE-R</item>       <item>BOOL</item>-      <item>BUILD_INTERFACE</item>-      <item>COMMA</item>-      <item>COMPILE_FEATURES</item>-      <item>COMPILE_LANGUAGE</item>+      <item>AND</item>+      <item>OR</item>+      <item>NOT</item>+      <item>STREQUAL</item>+      <item>EQUAL</item>+      <item>IN_LIST</item>+      <item>VERSION_LESS</item>+      <item>VERSION_GREATER</item>+      <item>VERSION_EQUAL</item>+      <item>VERSION_LESS_EQUAL</item>+      <item>VERSION_GREATER_EQUAL</item>+      <item>TARGET_EXISTS</item>       <item>CONFIG</item>-      <item>CXX_COMPILER_ID</item>-      <item>CXX_COMPILER_VERSION</item>+      <item>PLATFORM_ID</item>       <item>C_COMPILER_ID</item>+      <item>CXX_COMPILER_ID</item>+      <item>CUDA_COMPILER_ID</item>+      <item>Fortran_COMPILER_ID</item>       <item>C_COMPILER_VERSION</item>-      <item>EQUAL</item>-      <item>GENEX_EVAL</item>+      <item>CXX_COMPILER_VERSION</item>+      <item>CUDA_COMPILER_VERSION</item>+      <item>Fortran_COMPILER_VERSION</item>+      <item>TARGET_POLICY</item>+      <item>COMPILE_FEATURES</item>+      <item>COMPILE_LANG_AND_ID</item>+      <item>COMPILE_LANGUAGE</item>+      <item>ANGLE-R</item>+      <item>COMMA</item>+      <item>SEMICOLON</item>       <item>IF</item>-      <item>INSTALL_INTERFACE</item>-      <item>INSTALL_PREFIX</item>-      <item>IN_LIST</item>       <item>JOIN</item>-      <item>LINK_ONLY</item>+      <item>REMOVE_DUPLICATES</item>+      <item>FILTER</item>       <item>LOWER_CASE</item>-      <item>MAKE_C_IDENTIFIER</item>-      <item>NOT</item>-      <item>OR</item>-      <item>PLATFORM_ID</item>-      <item>SEMICOLON</item>-      <item>SHELL_PATH</item>-      <item>STREQUAL</item>-      <item>TARGET_BUNDLE_CONTENT_DIR</item>-      <item>TARGET_BUNDLE_DIR</item>-      <item>TARGET_EXISTS</item>+      <item>UPPER_CASE</item>+      <item>GENEX_EVAL</item>+      <item>TARGET_GENEX_EVAL</item>+      <item>TARGET_NAME_IF_EXISTS</item>       <item>TARGET_FILE</item>-      <item>TARGET_FILE_DIR</item>+      <item>TARGET_FILE_BASE_NAME</item>+      <item>TARGET_FILE_PREFIX</item>+      <item>TARGET_FILE_SUFFIX</item>       <item>TARGET_FILE_NAME</item>-      <item>TARGET_GENEX_EVAL</item>+      <item>TARGET_FILE_DIR</item>       <item>TARGET_LINKER_FILE</item>-      <item>TARGET_LINKER_FILE_DIR</item>+      <item>TARGET_LINKER_FILE_BASE_NAME</item>+      <item>TARGET_LINKER_FILE_PREFIX</item>+      <item>TARGET_LINKER_FILE_SUFFIX</item>       <item>TARGET_LINKER_FILE_NAME</item>-      <item>TARGET_NAME</item>-      <item>TARGET_NAME_IF_EXISTS</item>-      <item>TARGET_OBJECTS</item>+      <item>TARGET_LINKER_FILE_DIR</item>+      <item>TARGET_SONAME_FILE</item>+      <item>TARGET_SONAME_FILE</item>+      <item>TARGET_SONAME_FILE_NAME</item>+      <item>TARGET_SONAME_FILE_DIR</item>       <item>TARGET_PDB_FILE</item>-      <item>TARGET_PDB_FILE_DIR</item>+      <item>TARGET_PDB_FILE_BASE_NAME</item>       <item>TARGET_PDB_FILE_NAME</item>-      <item>TARGET_POLICY</item>+      <item>TARGET_PDB_FILE_DIR</item>+      <item>TARGET_BUNDLE_DIR</item>+      <item>TARGET_BUNDLE_CONTENT_DIR</item>       <item>TARGET_PROPERTY</item>-      <item>TARGET_SONAME_FILE</item>-      <item>TARGET_SONAME_FILE_DIR</item>-      <item>TARGET_SONAME_FILE_NAME</item>-      <item>UPPER_CASE</item>-      <item>VERSION_EQUAL</item>-      <item>VERSION_GREATER</item>-      <item>VERSION_GREATER_EQUAL</item>-      <item>VERSION_LESS</item>-      <item>VERSION_LESS_EQUAL</item>+      <item>INSTALL_PREFIX</item>+      <item>TARGET_NAME</item>+      <item>LINK_ONLY</item>+      <item>INSTALL_INTERFACE</item>+      <item>BUILD_INTERFACE</item>+      <item>MAKE_C_IDENTIFIER</item>+      <item>TARGET_OBJECTS</item>+      <item>SHELL_PATH</item>     </list>      <contexts>@@ -2501,6 +2687,7 @@         <WordDetect String="target_link_directories" insensitive="true" attribute="Command" context="target_link_directories_ctx" />         <WordDetect String="target_link_libraries" insensitive="true" attribute="Command" context="target_link_libraries_ctx" />         <WordDetect String="target_link_options" insensitive="true" attribute="Command" context="target_link_options_ctx" />+        <WordDetect String="target_precompile_headers" insensitive="true" attribute="Command" context="target_precompile_headers_ctx" />         <WordDetect String="target_sources" insensitive="true" attribute="Command" context="target_sources_ctx" />         <WordDetect String="try_compile" insensitive="true" attribute="Command" context="try_compile_ctx" />         <WordDetect String="try_run" insensitive="true" attribute="Command" context="try_run_ctx" />@@ -2637,11 +2824,18 @@         <DetectChar attribute="Normal Text" context="execute_process_ctx_op" char="(" />       </context>       <context attribute="Normal Text" lineEndContext="#stay" name="execute_process_ctx_op">+        <DetectChar attribute="Normal Text" context="execute_process_ctx_op_nested" char="(" />         <IncludeRules context="EndCmdPop2" />         <keyword attribute="Named Args" context="#stay" String="execute_process_nargs" />         <keyword attribute="Special Args" context="#stay" String="execute_process_sargs" />         <IncludeRules context="User Function Args" />       </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="execute_process_ctx_op_nested">+        <IncludeRules context="EndCmdPop" />+        <keyword attribute="Named Args" context="#stay" String="execute_process_nargs" />+        <keyword attribute="Special Args" context="#stay" String="execute_process_sargs" />+        <IncludeRules context="User Function Args" />+      </context>       <context attribute="Normal Text" lineEndContext="#stay" name="file_ctx">         <DetectChar attribute="Normal Text" context="file_ctx_op" char="(" />       </context>@@ -2711,6 +2905,7 @@       </context>       <context attribute="Normal Text" lineEndContext="#stay" name="get_cmake_property_ctx_op">         <IncludeRules context="EndCmdPop2" />+        <keyword attribute="Special Args" context="#stay" String="get_cmake_property_sargs" />         <keyword attribute="Property" context="#stay" String="global-properties" />         <IncludeRules context="Detect More global-properties" />         <IncludeRules context="User Function Args" />@@ -2953,18 +3148,30 @@         <DetectChar attribute="Normal Text" context="add_custom_command_ctx_op" char="(" />       </context>       <context attribute="Normal Text" lineEndContext="#stay" name="add_custom_command_ctx_op">+        <DetectChar attribute="Normal Text" context="add_custom_command_ctx_op_nested" char="(" />         <IncludeRules context="EndCmdPop2" />         <keyword attribute="Named Args" context="#stay" String="add_custom_command_nargs" />         <IncludeRules context="User Function Args" />       </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="add_custom_command_ctx_op_nested">+        <IncludeRules context="EndCmdPop" />+        <keyword attribute="Named Args" context="#stay" String="add_custom_command_nargs" />+        <IncludeRules context="User Function Args" />+      </context>       <context attribute="Normal Text" lineEndContext="#stay" name="add_custom_target_ctx">         <DetectChar attribute="Normal Text" context="add_custom_target_ctx_op" char="(" />       </context>       <context attribute="Normal Text" lineEndContext="#stay" name="add_custom_target_ctx_op">+        <DetectChar attribute="Normal Text" context="add_custom_target_ctx_op_nested" char="(" />         <IncludeRules context="EndCmdPop2" />         <keyword attribute="Named Args" context="#stay" String="add_custom_target_nargs" />         <IncludeRules context="User Function Args" />       </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="add_custom_target_ctx_op_nested">+        <IncludeRules context="EndCmdPop" />+        <keyword attribute="Named Args" context="#stay" String="add_custom_target_nargs" />+        <IncludeRules context="User Function Args" />+      </context>       <context attribute="Normal Text" lineEndContext="#stay" name="add_definitions_ctx">         <DetectChar attribute="Normal Text" context="add_definitions_ctx_op" char="(" />       </context>@@ -3014,10 +3221,16 @@         <DetectChar attribute="Normal Text" context="add_test_ctx_op" char="(" />       </context>       <context attribute="Normal Text" lineEndContext="#stay" name="add_test_ctx_op">+        <DetectChar attribute="Normal Text" context="add_test_ctx_op_nested" char="(" />         <IncludeRules context="EndCmdPop2" />         <keyword attribute="Named Args" context="#stay" String="add_test_nargs" />         <IncludeRules context="User Function Args" />       </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="add_test_ctx_op_nested">+        <IncludeRules context="EndCmdPop" />+        <keyword attribute="Named Args" context="#stay" String="add_test_nargs" />+        <IncludeRules context="User Function Args" />+      </context>       <context attribute="Normal Text" lineEndContext="#stay" name="aux_source_directory_ctx">         <DetectChar attribute="Normal Text" context="aux_source_directory_ctx_op" char="(" />       </context>@@ -3297,6 +3510,14 @@         <keyword attribute="Named Args" context="#stay" String="target_link_options_nargs" />         <IncludeRules context="User Function Args" />       </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="target_precompile_headers_ctx">+        <DetectChar attribute="Normal Text" context="target_precompile_headers_ctx_op" char="(" />+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="target_precompile_headers_ctx_op">+        <IncludeRules context="EndCmdPop2" />+        <keyword attribute="Named Args" context="#stay" String="target_precompile_headers_nargs" />+        <IncludeRules context="User Function Args" />+      </context>       <context attribute="Normal Text" lineEndContext="#stay" name="target_sources_ctx">         <DetectChar attribute="Normal Text" context="target_sources_ctx_op" char="(" />       </context>@@ -3538,6 +3759,7 @@         <RegExpr attribute="Builtin Variable" context="#stay" String="\b&id_re;_LIBRARY_DIRS\b" />         <RegExpr attribute="Builtin Variable" context="#stay" String="\b&id_re;_VERSION_COUNT\b" />         <RegExpr attribute="Builtin Variable" context="#stay" String="\b&id_re;_VERSION_STRING\b" />+        <RegExpr attribute="Builtin Variable" context="#stay" String="\b&id_re;_MODULE_NAME\b" />         <RegExpr attribute="Builtin Variable" context="#stay" String="\bCMAKE_&id_re;_POSTFIX\b" />         <RegExpr attribute="Builtin Variable" context="#stay" String="\bCMAKE_&id_re;_ANDROID_TOOLCHAIN_MACHINE\b" />         <RegExpr attribute="Builtin Variable" context="#stay" String="\bCMAKE_&id_re;_ANDROID_TOOLCHAIN_PREFIX\b" />@@ -3598,6 +3820,7 @@         <RegExpr attribute="Builtin Variable" context="#stay" String="\bCMAKE_&id_re;_STANDARD_LIBRARIES\b" />         <RegExpr attribute="Builtin Variable" context="#stay" String="\bCMAKE_&id_re;_VISIBILITY_PRESET\b" />         <RegExpr attribute="Builtin Variable" context="#stay" String="\bCMAKE_ARCHIVE_OUTPUT_DIRECTORY_&id_re;\b" />+        <RegExpr attribute="Builtin Variable" context="#stay" String="\bCMAKE_ARGV[0-9]+\b" />         <RegExpr attribute="Builtin Variable" context="#stay" String="\bCMAKE_COMPILE_PDB_OUTPUT_DIRECTORY_&id_re;\b" />         <RegExpr attribute="Builtin Variable" context="#stay" String="\bCMAKE_DISABLE_FIND_PACKAGE_&id_re;\b" />         <RegExpr attribute="Builtin Variable" context="#stay" String="\bCMAKE_EXE_LINKER_FLAGS_&id_re;\b" />@@ -3609,8 +3832,8 @@         <RegExpr attribute="Builtin Variable" context="#stay" String="\bCMAKE_MODULE_LINKER_FLAGS_&id_re;\b" />         <RegExpr attribute="Builtin Variable" context="#stay" String="\bCMAKE_MODULE_LINKER_FLAGS_&id_re;_INIT\b" />         <RegExpr attribute="Builtin Variable" context="#stay" String="\bCMAKE_PDB_OUTPUT_DIRECTORY_&id_re;\b" />-        <RegExpr attribute="Builtin Variable" context="#stay" String="\bCMAKE_POLICY_DEFAULT_CMP&id_re;\b" />-        <RegExpr attribute="Builtin Variable" context="#stay" String="\bCMAKE_POLICY_WARNING_CMP&id_re;\b" />+        <RegExpr attribute="Builtin Variable" context="#stay" String="\bCMAKE_POLICY_DEFAULT_CMP[0-9]{4}\b" />+        <RegExpr attribute="Builtin Variable" context="#stay" String="\bCMAKE_POLICY_WARNING_CMP[0-9]{4}\b" />         <RegExpr attribute="Builtin Variable" context="#stay" String="\bCMAKE_PROJECT_&id_re;_INCLUDE\b" />         <RegExpr attribute="Builtin Variable" context="#stay" String="\bCMAKE_RUNTIME_OUTPUT_DIRECTORY_&id_re;\b" />         <RegExpr attribute="Builtin Variable" context="#stay" String="\bCMAKE_SHARED_LINKER_FLAGS_&id_re;\b" />@@ -3629,7 +3852,7 @@         <RegExpr attribute="Builtin Variable" context="#stay" String="\bCPACK_COMPONENT_&id_re;_GROUP\b" />         <RegExpr attribute="Builtin Variable" context="#stay" String="\bCPACK_COMPONENT_&id_re;_HIDDEN\b" />         <RegExpr attribute="Builtin Variable" context="#stay" String="\bCPACK_COMPONENT_&id_re;_REQUIRED\b" />-        <RegExpr attribute="Builtin Variable" context="#stay" String="\bCPACK_COMPONENT_&id_re;_DESCRIPTION\b" />+        <RegExpr attribute="Builtin Variable" context="#stay" String="\bCPACK_DEBIAN_&id_re;_DESCRIPTION\b" />         <RegExpr attribute="Builtin Variable" context="#stay" String="\bCPACK_DEBIAN_&id_re;_FILE_NAME\b" />         <RegExpr attribute="Builtin Variable" context="#stay" String="\bCPACK_DEBIAN_&id_re;_PACKAGE_ARCHITECTURE\b" />         <RegExpr attribute="Builtin Variable" context="#stay" String="\bCPACK_DEBIAN_&id_re;_PACKAGE_BREAKS\b" />@@ -3706,11 +3929,28 @@       </context>        <context attribute="Normal Text" lineEndContext="#stay" name="Detect Variable Substitutions">-        <RegExpr attribute="Environment Variable Substitution" context="#stay" String="\$ENV\{\s*[\w-]+\s*\}" />+        <RegExpr attribute="Cache Variable Substitution" context="#stay" String="\$CACHE\{\s*[\w-]+\s*\}" />+        <RegExpr attribute="Environment Variable Substitution" context="EnvVarSubst" String="\$ENV\{\s*[\w-]+\s*\}" lookAhead="true" />         <Detect2Chars attribute="Variable Substitution" context="VarSubst" char="$" char1="{" />         <RegExpr attribute="@Variable Substitution" context="@VarSubst" String="@&id_re;@" lookAhead="true" />       </context> +      <context attribute="Environment Variable Substitution" lineEndContext="#pop" name="EnvVarSubst">+        <DetectIdentifier />+        <DetectChar attribute="Environment Variable Substitution" context="EnvVarSubstVar" char="{" />+        <DetectChar attribute="Environment Variable Substitution" context="#pop" char="}" />+      </context>++      <context attribute="Environment Variable Substitution" lineEndContext="#pop" name="EnvVarSubstVar">+        <keyword attribute="Standard Environment Variable" context="#stay" String="environment-variables" insensitive="false" />+        <RegExpr attribute="Standard Environment Variable" context="#stay" String="\b&id_re;_DIR\b" />+        <RegExpr attribute="Standard Environment Variable" context="#stay" String="\b&id_re;_ROOT\b" />+        <RegExpr attribute="Standard Environment Variable" context="#stay" String="\bASM&id_re;\b" />+        <RegExpr attribute="Standard Environment Variable" context="#stay" String="\bASM&id_re;FLAGS\b" />+        <DetectIdentifier />+        <DetectChar attribute="Environment Variable Substitution" context="#pop#pop" char="}" />+      </context>+       <context attribute="Variable Substitution" lineEndContext="#pop" name="VarSubst">         <IncludeRules context="Detect Builtin Variables" />         <DetectIdentifier />@@ -3809,10 +4049,12 @@       <itemData name="Strings" defStyleNum="dsString" spellChecking="true" />       <itemData name="Escapes" defStyleNum="dsChar" spellChecking="false" />       <itemData name="Builtin Variable" defStyleNum="dsDecVal" color="#c09050" selColor="#c09050" spellChecking="false" />+      <itemData name="Internal Name" defStyleNum="dsDecVal" color="#303030" selColor="#303030" spellChecking="false" />       <itemData name="Variable Substitution" defStyleNum="dsDecVal" spellChecking="false" />       <itemData name="@Variable Substitution" defStyleNum="dsBaseN" spellChecking="false" />-      <itemData name="Internal Name" defStyleNum="dsDecVal" color="#303030" selColor="#303030" spellChecking="false" />+      <itemData name="Cache Variable Substitution" defStyleNum="dsFloat" spellChecking="false" />       <itemData name="Environment Variable Substitution" defStyleNum="dsFloat" spellChecking="false" />+      <itemData name="Standard Environment Variable" defStyleNum="dsFloat" spellChecking="false" />       <itemData name="Generator Expression Keyword" defStyleNum="dsKeyword" color="#b84040" selColor="#b84040" spellChecking="false" />       <itemData name="Generator Expression" defStyleNum="dsOthers" color="#b86050" selColor="#b86050" spellChecking="false" />       <itemData name="Comment" defStyleNum="dsComment" spellChecking="true" />
syntax/coffee.xml view
@@ -2,8 +2,8 @@ <!DOCTYPE language SYSTEM "language.dtd">  <language name="CoffeeScript"-          version="8"-          kateversion="3.4"+          version="10"+          kateversion="5.0"           section="Scripts"           extensions="Cakefile;*.coffee;*.coco;*.cson"           mimetype="text/x-coffeescript;application/x-coffeescript;application/vnd.coffeescript"@@ -251,27 +251,27 @@         <RegExpr attribute="Error" context="#stay" String="String\.raw(?=`)"/>         <StringDetect attribute="JavaScript Template" context="Javascript RawTemplate" String="String.raw\`"/>         <!-- Contexts of javascript.xml. -->-        <DetectChar attribute="JavaScript Symbol" context="JavaScript Object" char="{" beginRegion="Brace" />+        <DetectChar context="JavaScript Object" char="{" beginRegion="Brace" />       </context>       <context name="JavaScript Object" attribute="Normal" lineEndContext="#stay" noIndentationBasedFolding="1">         <DetectChar context="#pop" char="`" lookAhead="true"/>-        <DetectChar attribute="JavaScript Symbol" context="#pop" char="}" endRegion="Brace"/>+        <DetectChar context="#pop" char="}" endRegion="Brace"/>         <IncludeRules context="Overwrite Javascript"/>         <IncludeRules context="Object##JavaScript"/>       </context>       <context name="Javascript Template" attribute="JavaScript Template" lineEndContext="#stay" noIndentationBasedFolding="1">         <RegExpr attribute="Escape" context="#stay" String="\\\\\\`"/>-        <Detect2Chars attribute="JavaScript Template" context="#pop" char="\" char1="`"/> <!-- End template. -->+        <Detect2Chars attribute="JavaScript Template" context="RegExpAfterString##JavaScript" char="\" char1="`"/> <!-- End template. -->         <DetectChar context="#pop" char="`" lookAhead="true"/>         <Detect2Chars attribute="JavaScript Substitution" context="Javascript Substitution" char="$" char1="{"/>         <IncludeRules context="Template##JavaScript"/>-        <RegExpr attribute="Error" context="#stay" String="([^\\\s](?=`)|\S(?=\s+`))"/>+        <RegExpr attribute="Error" context="#stay" String="(?:[^\\\s](?=`)|\S(?=\s+`))"/>       </context>       <context name="Javascript RawTemplate" attribute="JavaScript Template" lineEndContext="#stay">         <Detect2Chars attribute="JavaScript Template" context="#stay" char="\" char1="\"/>-        <Detect2Chars attribute="JavaScript Template" context="#pop" char="\" char1="`"/>+        <Detect2Chars attribute="JavaScript Template" context="RegExpAfterString##JavaScript" char="\" char1="`"/> <!-- End template. -->         <DetectChar context="#pop" char="`" lookAhead="true"/>-        <RegExpr attribute="Error" context="#stay" String="([^\\\s](?=`)|\S(?=\s+`))"/>+        <RegExpr attribute="Error" context="#stay" String="(?:[^\\\s](?=`)|\S(?=\s+`))"/>       </context>       <context name="Javascript Substitution" attribute="Normal" lineEndContext="#stay" noIndentationBasedFolding="1">         <DetectChar attribute="Javascript" context="#pop" char="`" lookAhead="true"/>@@ -279,16 +279,17 @@         <IncludeRules context="Overwrite Javascript"/>         <IncludeRules context="Substitution##JavaScript"/>       </context>+       <!-- Embedded Javascript (triple backticks). -->       <context name="Javascript Triple Backticks" attribute="Normal" lineEndContext="#stay" noIndentationBasedFolding="1">         <StringDetect attribute="Javascript" context="#pop" String="```" endRegion="Javascript TB"/>-        <DetectChar attribute="JavaScript Symbol" context="JavaScript-TB Object" char="{" beginRegion="Brace"/>+        <DetectChar context="JavaScript-TB Object" char="{" beginRegion="Brace"/>         <IncludeRules context="Normal##JavaScript" includeAttrib="true"/>       </context>       <context name="JavaScript-TB Object" attribute="Normal" lineEndContext="#stay" noIndentationBasedFolding="1">         <StringDetect attribute="Javascript" context="#pop" String="```" lookAhead="true"/>-        <DetectChar attribute="JavaScript Symbol" context="#pop" char="}" endRegion="Brace"/>-        <DetectChar attribute="JavaScript Symbol" context="JavaScript-TB Object" char="{" beginRegion="Brace"/>+        <DetectChar context="#pop" char="}" endRegion="Brace"/>+        <DetectChar context="JavaScript-TB Object" char="{" beginRegion="Brace"/>         <IncludeRules context="Object##JavaScript"/>       </context>     </contexts>@@ -320,7 +321,6 @@       <itemData name="Literal Character Escape" defStyleNum="dsChar" spellChecking="false" />       <itemData name="Error" defStyleNum="dsError" spellChecking="false"/> -      <itemData name="JavaScript Symbol" defStyleNum="dsOperator" spellChecking="false"/>       <itemData name="JavaScript Template" defStyleNum="dsVerbatimString"/>       <itemData name="JavaScript Substitution" defStyleNum="dsSpecialChar" spellChecking="false"/>     </itemDatas>
syntax/cpp.xml view
@@ -11,12 +11,12 @@ <language     name="C++"     section="Sources"-    version="7"+    version="8"     kateversion="5.0"     indenter="cstyle"     style="C++"     mimetype="text/x-c++src;text/x-c++hdr;text/x-chdr"-    extensions="*.c++;*.cxx;*.cpp;*.cc;*.C;*.cu;*.h;*.hh;*.H;*.h++;*.hxx;*.hpp;*.hcc;*.cuh;*.ino;*.pde;*.moc"+    extensions="*.c++;*.cxx;*.cpp;*.cc;*.C;*.cu;*.h;*.hh;*.H;*.h++;*.hxx;*.hpp;*.hcc;*.cuh;*.inl;*.ino;*.pde;*.moc"     author="Alex Turbov (i.zaufi@gmail.com)"     license="LGPL"     priority="9"
syntax/css.xml view
@@ -38,7 +38,8 @@  --> -<language name="CSS" version="8" kateversion="5.0" section="Markup" extensions="*.css" indenter="cstyle" mimetype="text/css" author="Wilbert Berendsen (wilbert@kde.nl)" license="LGPL" priority="10">+<language name="CSS" version="9" kateversion="5.0" section="Markup" extensions="*.css" indenter="cstyle" mimetype="text/css" author="Wilbert Berendsen (wilbert@kde.nl)" license="LGPL" priority="10">+    <!-- https://www.w3.org/Style/CSS/current-work -->      <highlighting>         <list name="properties">@@ -1258,8 +1259,9 @@             <item>selection</item>         </list> -        <list name="pseudoclass-not">+        <list name="pseudoclass-selector">             <item>not</item>+            <item>matches</item>         </list>          <list name="pseudoclasses-@page">@@ -1383,8 +1385,8 @@                 <keyword attribute="Value Keyword" context="#stay" String="value keywords" />                 <keyword attribute="Value" context="#stay" String="values" />                 <keyword attribute="Color" context="#stay" String="colors" />-                <RegExpr attribute="Color" context="#stay" String="#([0-9A-Fa-f]{3}){1,2}\b" />-                <RegExpr attribute="Number" context="FindUnits" String="[-+]?[0-9.]+(?![-+])" />+                <RegExpr attribute="Color" context="#stay" String="#([0-9A-Fa-f]{3,4}){1,2}\b" />+                <RegExpr attribute="Number" context="FindUnits" String="[-+]?([0-9]+(\.[0-9]+)?|\.[0-9]+)([eE][+-]?[0-9]+)?(?![-+])" />                 <RegExpr attribute="Normal Text" context="#stay" String="[-]?(&nmstart;)(&nmchar;)*" />             </context> @@ -1393,7 +1395,8 @@             </context>              <context name="FindUnits" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">-                <RegExpr attribute="Unit" context="#stay" String="(%|(em|ex|ch|rem|vw|vh|vm|px|in|cm|mm|pt|pc|deg|rad|grad|turn|ms|s|Hz|kHz)\b)(?![-+])" />+                <!-- https://drafts.csswg.org/css-values-4/#lengths -->+                <RegExpr attribute="Unit" context="#stay" String="(%|(em|ex|cap|ch|ic|rem|lh|rlh|vw|vh|vi|vb|vmin|vmax|cm|mm|Q|in|pc|pt|px|deg|rad|grad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx|x)\b)(?![-+])" />             </context>              <!-- find strings // "some words" 'some words' -->@@ -1548,7 +1551,7 @@              <context name="SelectorPseudo" attribute="Selector Pseudo" lineEndContext="#pop">                 <DetectChar attribute="Selector Pseudo" context="SelectorPseudoElements" char=":" />-                <keyword attribute="Selector Pseudo" context="SelectorPseudoValueSelector" String="pseudoclass-not" />+                <keyword attribute="Selector Pseudo" context="SelectorPseudoValueSelector" String="pseudoclass-selector" />                 <keyword attribute="Selector Pseudo" context="SelectorPseudoValue" String="pseudoclasses" />                 <RegExpr attribute="Selector Pseudo" context="SelectorPseudoValue" String="[-a-zA-Z][-a-zA-Z0-9]*" />             </context>
syntax/diff.xml view
@@ -15,7 +15,7 @@     2008-02-13: 1.11 Eduardo Robles Elvira <edulix AT gmail DOT com>      Fixed folding. -->-<language name="Diff" version="4" kateversion="5.0" section="Other" extensions="*.diff;*patch" mimetype="text/x-patch">+<language name="Diff" version="5" kateversion="5.0" section="Other" extensions="*.diff;*patch;*.rej" mimetype="text/x-patch">    <highlighting> 
syntax/djangotemplate.xml view
@@ -4,7 +4,7 @@ 	<!ENTITY name    "[A-Za-z_:][\w.:_-]*"> 	<!ENTITY entref  "&amp;(#[0-9]+|#[xX][0-9A-Fa-f]+|&name;);"> ]>-<language name="Django HTML Template" version="3" kateversion="2.4" section="Markup" extensions="*.htm;*.html" mimetype="text/html"  author="Matthew Marshall (matthew@matthewmarshall.org)" license="LGPL" priority="9">+<language name="Django HTML Template" version="4" kateversion="5.0" section="Markup" extensions="*.htm;*.html" mimetype="text/html"  author="Matthew Marshall (matthew@matthewmarshall.org)" license="LGPL" priority="9">  <!--     Based off of the katepart html syntax highlighting by Wilbert Berendsen.
syntax/doxygen.xml view
@@ -4,7 +4,7 @@     <!ENTITY wordsep "([][,?;()]|\.$|\.?\s)">     <!-- things that end a TagWord --> ]> <language name="Doxygen"-          version="5"+          version="6"           kateversion="5.0"           section="Markup"           extensions="*.dox;*.doxygen"@@ -463,7 +463,7 @@       <itemData name="Tags"         defStyleNum="dsAnnotation" bold="1" />       <itemData name="Custom Tags"  defStyleNum="dsAnnotation" />       <itemData name="Word"         defStyleNum="dsCommentVar" bold="1" italic="0" />-      <itemData name="HTML Tag"     defStyleNum="dsKeyword" color="#000000" bold="1" italic="0" />+      <itemData name="HTML Tag"     defStyleNum="dsKeyword" bold="1" italic="0" />       <itemData name="Entities"     defStyleNum="dsOthers" color="#4086C0" bold="1" italic="1" />       <itemData name="Description"  defStyleNum="dsDocumentation" />       <itemData name="Comment"      defStyleNum="dsComment" />
syntax/elixir.xml view
@@ -24,13 +24,13 @@ <language author="Rubén Caro (ruben.caro.estevez@gmail.com), Boris Egorov (egorov@linux.com)"           extensions="*.ex;*.exs;*.eex;*.xml.eex;*.js.eex"           indenter="elixir"-          kateversion="5.0"+          kateversion="5.53"           license="LGPLv2+"           mimetype="text/x-elixir"           name="Elixir"           section="Sources"           style="elixir"-          version="4">+          version="5">   <highlighting>     <list name="control-flow">       <item>catch</item>
syntax/elm.xml view
@@ -1,6 +1,6 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE language SYSTEM "language.dtd">-<language name="Elm" version="1.0" kateversion="5.0" section="Sources" extensions="*.elm" author="Bonghyun Kim (bonghyun.d.kim@gmail.com)" license="MIT" style="elm">+<language name="Elm" version="2" kateversion="5.0" section="Sources" extensions="*.elm" author="Bonghyun Kim (bonghyun.d.kim@gmail.com)" license="MIT" style="elm">   <highlighting>     <list name="declarations">       <item>type</item>@@ -40,7 +40,7 @@       <context attribute="Normal" lineEndContext="#stay" name="code">         <Detect2Chars attribute="Comment" context="comments" char="{" char1="-" />         <Detect2Chars attribute="Comment" context="comment" char="-" char1="-" />-        <WordDetect attribute="Comment" context="documentation" string="{-|" />+        <StringDetect attribute="Comment" context="documentation" String="{-|" />          <keyword attribute="Keyword"          context="#stay" String="declarations" />         <keyword attribute="Keyword"          context="#stay" String="letExpressions" />@@ -81,16 +81,16 @@       <context attribute="String" lineEndContext="#stay" name="multilineString">         <RegExpr attribute="String" context="#stay" String="\s*" />         <RegExpr attribute="String" context="#stay" String="\.*" />-        <StringDetect attribute="String" context="#pop" char="&quot;&quot;&quot;" />+        <StringDetect attribute="String" context="#pop" String="&quot;&quot;&quot;" />       </context>-      <context attribute="Normal" name="module">+      <context attribute="Normal" lineEndContext="#stay" name="module">         <DetectChar attribute="Normal" context="moduleParentheses" char="(" />         <keyword attribute="Keyword"          context="#stay" String="imports" />         <RegExpr attribute="Name"         context="#stay" String="\b[a-z][\w]*" />         <RegExpr attribute="Type"             context="#stay" String="\b[A-Z][\w]*" />         <DetectChar attribute="Normal" context="#pop" char=")" />       </context>-      <context attribute="Normal" name="moduleParentheses">+      <context attribute="Normal" lineEndContext="#stay" name="moduleParentheses">         <DetectChar attribute="Normal" context="moduleParentheses" char="(" />         <RegExpr attribute="Name"         context="#stay" String="\b[a-z][\w]*" />         <RegExpr attribute="Type"             context="#stay" String="\b[A-Z][\w]*" />@@ -99,7 +99,7 @@       <context attribute="Normal" lineEndContext="#stay" name="port">         <WordDetect attribute="Import" context="module" String="imports" />       </context>-      <context attribute="Normal" name="import">+      <context attribute="Normal" lineEndContext="#stay" name="import">         <DetectChar attribute="Normal" context="moduleParentheses" char="(" />         <keyword attribute="Keyword"          context="#stay" String="imports" />         <RegExpr attribute="Name"         context="#stay" String="\b[a-z][\w]*" />@@ -110,27 +110,27 @@         <WordDetect attribute="Comment" context="#stay" String="@docs" />         <Detect2Chars attribute="Comment" context="#pop" char="-" char1="}" />       </context>+    </contexts> -      <itemDatas>-        <itemData name="Normal"           defStyleNum="dsNormal"   spellChecking="false" />-        <itemData name="Comment"          defStyleNum="dsComment" />+    <itemDatas>+      <itemData name="Normal"           defStyleNum="dsNormal"   spellChecking="false" />+      <itemData name="Comment"          defStyleNum="dsComment" /> -        <itemData name="Keyword"          defStyleNum="dsKeyword"  spellChecking="false" />-        <itemData name="ControlFlowKeyword" defStyleNum="dsControlFlow"  spellChecking="false" />+      <itemData name="Keyword"          defStyleNum="dsKeyword"  spellChecking="false" />+      <itemData name="ControlFlowKeyword" defStyleNum="dsControlFlow"  spellChecking="false" /> -        <itemData name="Name"         defStyleNum="dsFunction"   spellChecking="false" />-        <itemData name="Port"         defStyleNum="dsNormal"   spellChecking="false" />-        <itemData name="Import"         defStyleNum="dsImport"   spellChecking="false" />-        <itemData name="Operator"         defStyleNum="dsOperator" spellChecking="false" />-        <itemData name="Type"             defStyleNum="dsDataType" spellChecking="false" />+      <itemData name="Name"         defStyleNum="dsFunction"   spellChecking="false" />+      <itemData name="Port"         defStyleNum="dsNormal"   spellChecking="false" />+      <itemData name="Import"         defStyleNum="dsImport"   spellChecking="false" />+      <itemData name="Operator"         defStyleNum="dsOperator" spellChecking="false" />+      <itemData name="Type"             defStyleNum="dsDataType" spellChecking="false" /> -        <itemData name="Decimal"          defStyleNum="dsDecVal"   spellChecking="false" />-        <itemData name="Hex"          defStyleNum="dsHexVal"   spellChecking="false" />-        <itemData name="Float"            defStyleNum="dsFloat"    spellChecking="false" />-        <itemData name="Char"             defStyleNum="dsChar"     spellChecking="false" />-        <itemData name="String"           defStyleNum="dsString" />-      </itemDatas>-    </contexts>+      <itemData name="Decimal"          defStyleNum="dsDecVal"   spellChecking="false" />+      <itemData name="Hex"          defStyleNum="dsBaseN"   spellChecking="false" />+      <itemData name="Float"            defStyleNum="dsFloat"    spellChecking="false" />+      <itemData name="Char"             defStyleNum="dsChar"     spellChecking="false" />+      <itemData name="String"           defStyleNum="dsString" />+    </itemDatas>   </highlighting>   <general>     <folding indentationsensitive="1"/>
syntax/glsl.xml view
@@ -1,6 +1,6 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE language SYSTEM "language.dtd">-<language name="GLSL" section="3D" extensions="*.glsl;*.vert;*.frag;*.geom;*.tcs;*.tes" mimetype="text/x-glslsrc" version="3" kateversion="5.0" author="Oliver Richers (o.richers@tu-bs.de)" license="LGPL">+<language name="GLSL" section="3D" extensions="*.glsl;*.vert;*.vs;*.frag;*.fs;*.geom;*.gs;*.tcs;*.tes" mimetype="text/x-glslsrc" version="4" kateversion="5.0" author="Oliver Richers (o.richers@tu-bs.de)" license="LGPL"> 	<highlighting> 		<list name="keywords"> 			<item>break</item>
syntax/haskell.xml view
@@ -1,6 +1,6 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE language SYSTEM "language.dtd">-<language name="Haskell" version="12" kateversion="3.4" section="Sources" extensions="*.hs;*.chs;*.hs-boot" mimetype="text/x-haskell" author="Nicolas Wu (zenzike@gmail.com)" license="LGPL" indenter="haskell" style="haskell">+<language name="Haskell" version="13" kateversion="5.0" section="Sources" extensions="*.hs;*.chs;*.hs-boot" mimetype="text/x-haskell" author="Nicolas Wu (zenzike@gmail.com)" license="LGPL" indenter="haskell" style="haskell">   <highlighting>   <list name="keywords">     <item>case</item>
syntax/html.xml view
@@ -5,7 +5,7 @@ 	<!ENTITY attributeName "[A-Za-z_:*#\(\[][\)\]\w.:_-]*"> 	<!ENTITY entref        "&amp;(#[0-9]+|#[xX][0-9A-Fa-f]+|&name;);"> ]>-<language name="HTML" version="5" kateversion="3.4" section="Markup" extensions="*.htm;*.html;*.shtml;*.shtm" mimetype="text/html"  author="Wilbert Berendsen (wilbert@kde.nl)" license="LGPL" priority="10">+<language name="HTML" version="10" kateversion="5.53" section="Markup" extensions="*.htm;*.html;*.shtml;*.shtm" mimetype="text/html"  author="Wilbert Berendsen (wilbert@kde.nl)" license="LGPL" priority="10">  <highlighting> <contexts>@@ -20,8 +20,19 @@     <StringDetect attribute="CDATA" context="CDATA" String="&lt;![CDATA[" beginRegion="cdata" />     <RegExpr attribute="Doctype" context="Doctype" String="&lt;!DOCTYPE\s+" insensitive="true" beginRegion="doctype"  />     <RegExpr attribute="Processing Instruction" context="PI" String="&lt;\?[\w:-]*" beginRegion="pi" />+    <IncludeRules context="FindSpecialHTMLTags" />+    <IncludeRules context="FindHTMLTags" />+    <!-- as long as kde gives DTDs the text/html mimetype--><IncludeRules context="FindDTDRules" />+    <IncludeRules context="FindEntityRefs" />+  </context>++  <!-- This allows you to insert HTML tags in other syntax definitions -->+  <context name="FindSpecialHTMLTags" attribute="Normal Text" lineEndContext="#stay">     <RegExpr attribute="Element" context="CSS" String="&lt;style\b" insensitive="true" beginRegion="style" />     <RegExpr attribute="Element" context="JS" String="&lt;script\b" insensitive="true" beginRegion="script" />+  </context>++  <context name="FindHTMLTags" attribute="Normal Text" lineEndContext="#stay">     <RegExpr attribute="Element" context="El Open" String="&lt;pre\b" insensitive="true" beginRegion="pre" />     <RegExpr attribute="Element" context="El Open" String="&lt;div\b" insensitive="true" beginRegion="div" />     <RegExpr attribute="Element" context="El Open" String="&lt;table\b" insensitive="true" beginRegion="table" />@@ -54,8 +65,6 @@     <RegExpr attribute="Element" context="El Close" String="&lt;/nav\b" insensitive="true" endRegion="nav" />     <RegExpr attribute="Element" context="El Close" String="&lt;/section\b" insensitive="true" endRegion="section" />     <RegExpr attribute="Element" context="El Close" String="&lt;/&name;" />-    <!-- as long as kde gives DTDs the text/html mimetype--><IncludeRules context="FindDTDRules" />-    <IncludeRules context="FindEntityRefs" />   </context>    <context name="FindEntityRefs" attribute="Other Text" lineEndContext="#stay">@@ -163,16 +172,23 @@   </context>    <context name="JS" attribute="Other Text" lineEndContext="#stay">-    <Detect2Chars attribute="Element" context="#pop" char="/" char1="&gt;" endRegion="script" />+    <RegExpr attribute="Attribute" context="Script-Type" String="(\s+|^)type(?=\=|\s|$)" insensitive="true"/>     <DetectChar attribute="Element" context="JS content" char="&gt;" />+    <IncludeRules context="DefaultJS" />+  </context>+  <context name="DefaultJS" attribute="Other Text" lineEndContext="#stay">+    <Detect2Chars attribute="Element" context="#pop" char="/" char1="&gt;" endRegion="script" />     <IncludeRules context="FindAttributes" />     <RegExpr attribute="Error" context="#stay" String="\S" />   </context>    <context name="JS content" attribute="Other Text" lineEndContext="#stay">+    <IncludeRules context="Default JS content"/>+    <IncludeRules context="Normal##JavaScript" includeAttrib="true"/>+  </context>+  <context name="Default JS content" attribute="Other Text" lineEndContext="#stay">     <RegExpr attribute="Element" context="El Close 2" String="&lt;/script\b" insensitive="true" endRegion="script" />     <RegExpr attribute="Comment" context="JS comment close" String="//(?=.*&lt;/script\b)" insensitive="true" />-    <IncludeRules context="Normal##JavaScript" includeAttrib="true"/>   </context>    <context name="JS comment close" attribute="Comment" lineEndContext="#pop">@@ -200,6 +216,79 @@   <context name="Value SQ" attribute="Value" lineEndContext="#stay">     <DetectChar attribute="Value" context="#pop#pop" char="&apos;" />     <IncludeRules context="FindEntityRefs" />+  </context>++  <!-- Read content from the "type" attribute to change the language to+       highlight in the <script> tag. The default language is JavaScript. -->++  <context name="Script-Type" attribute="Other Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop">+    <DetectSpaces />+    <DetectChar attribute="Attribute" context="#pop!Script-Type Value" char="=" />+  </context>+  <context name="Script-Type Value" attribute="Other Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop!Value">+    <DetectSpaces />+    <!-- TypeScript -->+    <StringDetect attribute="Value" context="#pop#pop!TypeScript" String="&quot;text/typescript&quot;"/>+    <StringDetect attribute="Value" context="#pop#pop!TypeScript" String="&apos;text/typescript&apos;"/>+    <!-- JSX (JavaScript React) -->+    <StringDetect attribute="Value" context="#pop#pop!JSX" String="&quot;text/jsx&quot;"/>+    <StringDetect attribute="Value" context="#pop#pop!JSX" String="&apos;text/jsx&apos;"/>+    <StringDetect attribute="Value" context="#pop#pop!JSX" String="&quot;text/babel&quot;"/>+    <StringDetect attribute="Value" context="#pop#pop!JSX" String="&apos;text/babel&apos;"/>+    <!-- MustacheJS / HandlebarsJS / RactiveJS -->+    <StringDetect attribute="Value" context="#pop#pop!MustacheJS" String="&quot;x-tmpl-mustache&quot;"/>+    <StringDetect attribute="Value" context="#pop#pop!MustacheJS" String="&apos;x-tmpl-mustache&apos;"/>+    <StringDetect attribute="Value" context="#pop#pop!MustacheJS" String="&quot;text/mustache&quot;"/>+    <StringDetect attribute="Value" context="#pop#pop!MustacheJS" String="&apos;text/mustache&apos;"/>+    <StringDetect attribute="Value" context="#pop#pop!MustacheJS" String="&quot;text/x-mustache-template&quot;"/>+    <StringDetect attribute="Value" context="#pop#pop!MustacheJS" String="&apos;text/x-mustache-template&apos;"/>+    <StringDetect attribute="Value" context="#pop#pop!MustacheJS" String="&quot;text/x-handlebars-template&quot;"/>+    <StringDetect attribute="Value" context="#pop#pop!MustacheJS" String="&apos;text/x-handlebars-template&apos;"/>+    <StringDetect attribute="Value" context="#pop#pop!MustacheJS" String="&quot;text/ractive&quot;"/>+    <StringDetect attribute="Value" context="#pop#pop!MustacheJS" String="&apos;text/ractive&apos;"/>+    <!-- HTML templates -->+    <StringDetect attribute="Value" context="#pop#pop!Script HTML template" String="&quot;text/html&quot;"/>+    <StringDetect attribute="Value" context="#pop#pop!Script HTML template" String="&apos;text/html&apos;"/>+  </context>++  <context name="JSX" attribute="Other Text" lineEndContext="#stay">+    <DetectChar attribute="Element" context="JSX content" char="&gt;" />+    <IncludeRules context="DefaultJS" />+  </context>+  <context name="JSX content" attribute="Other Text" lineEndContext="#stay">+    <IncludeRules context="Default JS content"/>+    <IncludeRules context="Normal##JavaScript React (JSX)" includeAttrib="true"/>+  </context>++  <context name="TypeScript" attribute="Other Text" lineEndContext="#stay">+    <DetectChar attribute="Element" context="TypeScript content" char="&gt;" />+    <IncludeRules context="DefaultJS" />+  </context>+  <context name="TypeScript content" attribute="Other Text" lineEndContext="#stay">+    <IncludeRules context="Default JS content"/>+    <IncludeRules context="Normal##TypeScript" includeAttrib="true"/>+  </context>++  <context name="MustacheJS" attribute="Other Text" lineEndContext="#stay">+    <DetectChar attribute="Element" context="MustacheJS content" char="&gt;" />+    <IncludeRules context="DefaultJS" />+  </context>+  <context name="MustacheJS content" attribute="Other Text" lineEndContext="#stay">+    <RegExpr attribute="Element" context="El Close 2" String="&lt;/script\b" insensitive="true" endRegion="script" />+    <StringDetect attribute="Error" context="#stay" String="&lt;script&gt;" insensitive="true" />+    <RegExpr attribute="Error" context="#stay" String="&lt;script\b" insensitive="true" />+    <IncludeRules context="Base##Mustache/Handlebars (HTML)" includeAttrib="true"/>+  </context>++  <context name="Script HTML template" attribute="Other Text" lineEndContext="#stay">+    <DetectChar attribute="Element" context="Script HTML template content" char="&gt;" />+    <IncludeRules context="DefaultJS" />+  </context>+  <context name="Script HTML template content" attribute="Other Text" lineEndContext="#stay">+    <RegExpr attribute="Element" context="El Close 2" String="&lt;/script\b" insensitive="true" endRegion="script" />+    <StringDetect attribute="Error" context="#stay" String="&lt;script&gt;" insensitive="true" />+    <RegExpr attribute="Error" context="#stay" String="&lt;script\b" insensitive="true" />+    <IncludeRules context="FindHTML" />   </context>  </contexts>
syntax/idris.xml view
@@ -9,13 +9,16 @@     <item> case </item>     <item> class </item>     <item> codata </item>+    <item> constructor </item>     <item> covering </item>     <item> data </item>     <item> default </item>     <item> do </item>     <item> dsl </item>     <item> else </item>+    <item> export </item>     <item> if </item>+    <item> implementation </item>     <item> implicit </item>     <item> import </item>     <item> impossible </item>@@ -26,10 +29,11 @@     <item> infixl </item>     <item> infixr </item>     <item> instance </item>+    <item> interface </item>     <item> lambda </item>     <item> let </item>     <item> module </item>-    <item> mututal </item>+    <item> mutual </item>     <item> namespace </item>     <item> of </item>     <item> parameters </item>
syntax/ini.xml view
@@ -1,6 +1,6 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE language SYSTEM "language.dtd">-<language name="INI Files" section="Configuration" extensions="*.ini;*.pls;*.kcfgc;*.conf" mimetype="" version="4" kateversion="2.4" author="Jan Janssen (medhefgo@web.de)" license="LGPL">+<language name="INI Files" section="Configuration" extensions="*.ini;*.pls;*.kcfgc" mimetype="" version="5" kateversion="2.4" author="Jan Janssen (medhefgo@web.de)" license="LGPL">  <highlighting> <list name="keywords">
syntax/isocpp.xml view
@@ -22,7 +22,7 @@ <language     name="ISO C++"     section="Sources"-    version="14"+    version="17"     kateversion="5.0"     indenter="cstyle"     style="C++"@@ -38,6 +38,7 @@     http://kde-files.org/content/show.php?content=90660   -->   <highlighting>+    <!-- https://en.cppreference.com/w/cpp/keyword -->     <list name="controlflow">       <item>break</item>       <item>case</item>@@ -55,14 +56,14 @@       <item>try</item>       <item>while</item>     </list>+     <list name="keywords">       <item>alignof</item>       <item>alignas</item>       <item>asm</item>       <item>auto</item>       <item>class</item>-      <item>concept</item> <!-- C++20 -->-      <item>requires</item> <!-- C++20 -->+      <item>consteval</item> <!-- C++20 -->       <item>constexpr</item>       <item>const_cast</item>       <item>decltype</item>@@ -70,7 +71,6 @@       <item>dynamic_cast</item>       <item>enum</item>       <item>explicit</item>-      <item>export</item> <!-- Unused but reserved for future use -->       <item>false</item>       <item>final</item> <!-- According N3272 -->       <item>friend</item>@@ -110,20 +110,26 @@       <item>or_eq</item>       <item>xor</item>       <item>xor_eq</item>+      <!-- Concept -->+      <item>concept</item>+      <item>requires</item>       <!-- TM TS -->-      <!-- <list>atomic_cancel</list>-      <list>atomic_commit</list>-      <list>atomic_noexcept</list>-      <list>synchronized</list>-      <list>transaction_safe</list>-      <list>transaction_safe_dynamic</list> -->-      <!-- module TS -->-      <!-- <list>import</list>-      <list>module</list> -->-      <!-- coroutine TS -->-      <!-- <list>co_await</list>-      <list>co_return</list>-      <list>co_yield</list> -->+      <!-- <item>atomic_cancel</item>+      <item>atomic_commit</item>+      <item>atomic_noexcept</item>+      <item>synchronized</item>+      <item>transaction_safe</item>+      <item>transaction_safe_dynamic</item> -->+      <!-- module -->+      <item>import</item>+      <item>module</item>+      <item>export</item> <!-- Unused but reserved, keyword since c++20 -->+      <!-- coroutine -->+      <item>co_await</item>+      <item>co_return</item>+      <item>co_yield</item>+      <!-- reflexion TS -->+      <!-- <item>reflexpr</item> -->     </list>     <!-- This keyword may appear in InternalsNS context. For example in code:       details::some_class::template some_templated_static();@@ -160,9 +166,11 @@       <item>using</item>     </list> +    <!-- https://en.cppreference.com/w/cpp/keyword -->     <list name="types">       <item>bool</item>       <item>char</item>+      <item>char8_t</item> <!-- C++20 -->       <item>char16_t</item>       <item>char32_t</item>       <item>double</item>@@ -216,7 +224,7 @@       <item>const</item>       <item>extern</item>       <item>mutable</item>-      <item>register</item>+      <item>register</item> <!-- The keyword is unused and reserved (c++17) -->       <item>static</item>       <item>thread_local</item>       <item>volatile</item>@@ -239,7 +247,10 @@       <item>__func__</item>       <item>assert</item>       <item>_Pragma</item>+      <!-- C++17 -->       <item>__has_include</item>+      <!-- C++20 -->+      <item>__has_cpp_attribute</item>     </list>     <list name="InMacro">       <item>__VA_ARGS__</item>@@ -283,15 +294,15 @@         <!-- Match scope regions -->         <DetectChar attribute="Symbol" context="#stay" char="{" beginRegion="Brace1" />         <DetectChar attribute="Symbol" context="#stay" char="}" endRegion="Brace1" />+        <Detect2Chars attribute="Symbol" context="#stay" char="&lt;" char1="%" beginRegion="Brace1" /> <!-- Digraph: { -->+        <Detect2Chars attribute="Symbol" context="#stay" char="%" char1="&gt;" endRegion="Brace1" /> <!-- Digraph: } -->         <!-- Detect attributes -->         <Detect2Chars attribute="Symbol" context="Attribute" char="[" char1="[" />+        <StringDetect attribute="Symbol" context="Attribute" String="&lt;:&lt;:" /> <!-- Digraph: [[ -->         <!-- Match numbers -->         <RegExpr attribute="Decimal" context="Number" String="\.?[0-9]" lookAhead="true" />         <!-- Match comments -->         <IncludeRules context="match comments and region markers" />-        <!-- Match punctuators -->-        <AnyChar attribute="Separator Symbol" context="#stay" String="&separators;" />-        <AnyChar attribute="Symbol" context="#stay" String="&punctuators;" />         <!-- Match keywords -->         <IncludeRules context="match keywords" />         <!-- Match string literals -->@@ -309,6 +320,9 @@         <IncludeRules context="match identifier" />         <!-- Match preprocessor directives -->         <RegExpr attribute="Preprocessor" context="AfterHash" String="&ispphash;" lookAhead="true" />+        <!-- Match punctuators -->+        <AnyChar attribute="Separator Symbol" context="#stay" String="&separators;" />+        <AnyChar attribute="Symbol" context="#stay" String="&punctuators;" />         <!-- Match invalid symbols -->         <AnyChar attribute="Error" context="#stay" String="$@`" />       </context>@@ -505,8 +519,10 @@         <context name="Attribute" attribute="Attribute" lineEndContext="#stay">+        <DetectSpaces/>         <keyword attribute="Standard Attribute" context="#stay" String="attributes" />         <Detect2Chars attribute="Symbol" context="#pop" char="]" char1="]" />+        <StringDetect attribute="Symbol" context="#pop" String=":&gt;:&gt;" /> <!-- Digraph: ]] -->         <DetectChar attribute="Separator Symbol" context="#stay" char="," />         <AnyChar attribute="Symbol" context="#stay" String="&punctuators;" />         <!-- Attributes may contain some text: [[deprecated("Reason text")]] -->@@ -684,6 +700,7 @@         <AnyChar attribute="Symbol" context="#stay" String="{}" />         <!-- Detect attributes -->         <Detect2Chars attribute="Symbol" context="Attribute In PP" char="[" char1="[" />+        <StringDetect attribute="Symbol" context="Attribute In PP" String="&lt;:&lt;:" /> <!-- Digraph: [[ -->         <!-- Match numbers -->         <RegExpr attribute="Decimal" context="Number" String="\.?[0-9]" lookAhead="true" />         <!-- Match comments -->
+ syntax/javascript-react.xml view
@@ -0,0 +1,421 @@+<?xml version="1.0" encoding="UTF-8"?>+<!DOCTYPE language SYSTEM "language.dtd"+[+	<!ENTITY simpleName "(?:[a-z][a-z\d]*:)?[a-z][a-z\d]*">+	<!ENTITY baseName   "[a-zA-Z_\$[:^ascii:]](?:[\w\$\-\.[:^ascii:]]*[\w\$[:^ascii:]])?">+	<!ENTITY name       "(?:&baseName;:)?&baseName;">+	<!ENTITY baseNameWithBound "(?:\b[a-zA-Z_\$]|[^[:ascii:]])(?:[\w\$\-\.[:^ascii:]]*[\w\$[:^ascii:]])?">+	<!ENTITY nameWithBound     "(?:&baseNameWithBound;:)?&baseNameWithBound;"> <!-- Use this instead of "\b&name;" -->++	<!ENTITY simpleTag  "&lt;\s*&simpleName;"> <!-- Element tag -->+	<!ENTITY tag        "&lt;\s*(?:&name;|&gt;)">+	<!ENTITY entref     "&amp;(?:[a-zA-Z\d]+|#\d+|#x[a-fA-F\d]+);">+	<!ENTITY mlComment  "/\*(?:[^\*]|\*+[^/\*])*\*+/">+	<!ENTITY endTagName "[\s&lt;&gt;]|/[&gt;/\*]|$"> <!-- Delimiter of end of Tag name -->++	<!ENTITY identifier "[a-zA-Z_$[:^ascii:]][\w$[:^ascii:]]*">+]>++<!--+    ====================================================================++      This file is part of the KDE's KSyntaxHighlighting framework.++      Copyright 2018-2019 Nibaldo González S. (nibgonz@gmail.com)++      This Source Code Form is subject to the terms of the MIT License.+      If a copy of the license was not distributed with this file,+      You can obtain one at: https://opensource.org/licenses/MIT++    ====================================================================++    This file is an extension of the JavaScript highlighter+    (javascript.xml, Version 14 and higher).+    IMPORTANT: Keep sync with "typescript-react.xml".++    Based on the XML syntax highlighting (v7), by Wilbert Berendsen+    (wilbert@kde.nl), and the TypeScript React grammar files,+    available at: https://github.com/Microsoft/TypeScript-TmLanguage++    Change log:+     * v8 [2019-11-21]: Tag detection is more stricter.+     * v7 [2019-11-19]: Rename definition "JavaScript React" to "JavaScript React (JSX)".+     * v5 [2019-02-20]: Don't highlight tags within declarations of+                        types, variables, classes and interfaces.+                        Fixes tags after substitutions in templates.+                        Reorder part of the code.+     * v4 [2018-12-30]: Allow type assertion in the tag name.+                        Allow tags after the keywords "await" & "yield".+                        Allow empty tags and non-ASCII tag name & attributes.+     * v3 [2018-11-18]: Fix Doxygen comments & shebang. Remove TSX extension.+     * v2 [2018-08-18]: Remove "Conditional Expression" context.+     * v1 [2018-06-20]: Initial version+-->++<language name="JavaScript React (JSX)" version="8" kateversion="5.0" section="Scripts" indenter="cstyle"+          priority="9" extensions="*.jsx" mimetype="text/jsx;text/x-jsx;application/jsx;application/x-jsx;"+          author="Nibaldo González (nibgonz@gmail.com)" license="MIT">++<highlighting>++	<contexts>++		<context name="Shebang" attribute="Normal Text" lineEndContext="#pop!Normal" lineEmptyContext="#pop!Normal" fallthrough="true" fallthroughContext="#pop!Normal">+			<Detect2Chars context="ShebangLine" attribute="Comment" char="#" char1="!" column="0" />+		</context>+		<context name="ShebangLine" attribute="Comment" lineEndContext="#pop#pop!Normal" />++		<context name="Normal" attribute="Normal Text" lineEndContext="#stay">+			<IncludeRules context="React" />+			<IncludeRules context="Normal##JavaScript" />+		</context>++		<!-- JavaScript -->++		<!-- Overwrite rules of 'javascript.xml'. These rules send to contexts+		     that contain: <IncludeRules context="Normal"/> in the JavaScript XML file. -->+		<context name="OverwriteJavaScript" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="Template" attribute="Template" char="`" />+			<DetectChar attribute="Normal Text" context="#stay" char="[" beginRegion="List" />+			<DetectChar attribute="Normal Text" context="NoRegExp##JavaScript" char="]" endRegion="List" />+			<!-- NOTE: The "{" character sends to the "Object" context (see the "React" context) -->+		</context>+		<context name="Object" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="#pop" attribute="Normal Text" char="}" endRegion="Brace" />+			<IncludeRules context="React" />+			<RegExpr context="ConditionalExpression" attribute="Symbol" String="\?(?=[^\{\}]*&identifier;\s*\:)" />+			<IncludeRules context="Object##JavaScript" />+		</context>+		<context name="ConditionalExpression" attribute="Normal Text" lineEndContext="#pop">+			<DetectChar context="#pop" attribute="Symbol" char=":" />+			<IncludeRules context="React" />+			<IncludeRules context="ConditionalExpression##JavaScript" />+		</context>+		<context name="Template" attribute="Template" lineEndContext="#stay">+			<DetectChar context="RegExpAfterString##JavaScript" attribute="Template" char="`" />+			<!-- Find tags and send to the "Substitution" context -->+			<Detect2Chars context="Substitution-BeforeTag" attribute="Substitution" char="$" char1="{" />+			<IncludeRules context="Template##JavaScript" />+		</context>+		<context name="Substitution" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="#pop" attribute="Substitution" char="}" />+			<IncludeRules context="React" />+			<IncludeRules context="Substitution##JavaScript" />+		</context>++		<!-- Do not highlight tags in some special contexts -->+		<context name="FindDeclarationsWithNoTags" attribute="Normal Text" lineEndContext="#stay">+			<WordDetect context="InterfaceDeclaration" attribute="Reserved" String="interface" />+			<WordDetect context="ClassDeclaration" attribute="Reserved" String="class" />+			<WordDetect context="VarDeclaration" attribute="Reserved" String="let" />+			<WordDetect context="VarDeclaration" attribute="Keyword" String="var" />+			<WordDetect context="VarDeclaration" attribute="Keyword" String="const" />+		</context>+		<!-- Do not highlight tags after ":" in variable declarations -->+		<context name="VarDeclaration" attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop">+			<DetectSpaces />+			<DetectChar context="#pop!NoTag" attribute="Symbol" char=":" />+			<RegExpr context="#stay" attribute="Normal Text" String="&identifier;(?=\s*(?:[\?!]\s*)?:)" />+			<AnyChar context="#stay" attribute="Symbol" String="?!" />+			<IncludeRules context="AllComments" />+		</context>+		<context name="NoTag" attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop">+			<DetectSpaces />+			<IncludeRules context="AllComments" />+			<DetectChar context="#pop" attribute="Symbol" char="&lt;" />+			<RegExpr context="#stay" attribute="Normal Text" String="\(\s*(?=&lt;)" />+			<RegExpr context="#stay" attribute="Normal Text" String="\[\s*(?=&lt;)" beginRegion="List" />+			<RegExpr context="#pop!Object" attribute="Normal Text" String="\{\s*&lt;\s*/(?![\*/])" beginRegion="Brace" />+			<RegExpr context="#pop!Object" attribute="Normal Text" String="\{\s*&lt;" beginRegion="Brace" />+		</context>+		<!-- Do not highlight tags in interface declarations -->+		<context name="InterfaceDeclaration" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="#pop!InterfaceContentDeclaration" attribute="Normal Text" char="{" beginRegion="Brace" />+			<DetectChar context="#pop" char="}" lookAhead="true" />+			<IncludeRules context="Normal##JavaScript" />+		</context>+		<context name="InterfaceContentDeclaration" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="#pop" attribute="Normal Text" char="}" endRegion="Brace" />+			<IncludeRules context="Object##JavaScript" />+		</context>+		<!-- Do not highlight tags in class declarations -->+		<context name="ClassDeclaration" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="#pop!ClassDeclarationContent" attribute="Normal Text" char="{" beginRegion="Brace" />+			<DetectChar context="#pop" char="}" lookAhead="true" />+			<IncludeRules context="Normal##JavaScript" />+		</context>+		<context name="ClassDeclarationContent" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="#pop" attribute="Normal Text" char="}" endRegion="Brace" />+			<DetectChar context="NoTag" attribute="Symbol" char=":" />+			<IncludeRules context="Object" />+		</context>++		<!-- ReactJS -->++		<!-- Tags highlighting -->+		<context name="React" attribute="Normal Text" lineEndContext="#stay">+			<!-- Tag in new line -->+			<RegExpr context="ValidTag" attribute="Normal Text" String="&tag;" firstNonSpace="true" lookAhead="true" />+			<!-- Highlight tags only after some keywords -->+			<RegExpr context="ValidTag" attribute="ControlFlow" String="\b(?:return|await)\s*(?=&tag;|/\*)" />+			<RegExpr context="ValidTag" attribute="Module" String="\b(?:default)\s*(?=&tag;|/\*)" />+			<RegExpr context="ValidTag" attribute="Reserved" String="\b(?:yield)\s*(?=&tag;|/\*)" />++			<!-- Characters before a valid tag -->+			<RegExpr context="ValidTag" attribute="Special Operators" String="\=&gt;\s*(?=&tag;|/\*)" />+			<RegExpr context="ValidTag" attribute="Symbol" String="(?:[,\=&gt;:\*\?]|&amp;&amp;|\|\|)\s*(?=&tag;|/\*)" />+			<RegExpr context="ValidTag" attribute="Normal Text" String="\[\s*(?=&tag;|/\*)" beginRegion="List" />+			<RegExpr context="ValidTag" attribute="Normal Text" String="\(\s*(?=&tag;|/\*)" />+			<!-- The "Object-BeforeTag" context looks for a valid Tag and then sends the "Object" context -->+			<DetectChar context="Object-BeforeTag" attribute="Normal Text" char="{" beginRegion="Brace" />++			<RegExpr context="ValidTag" attribute="Symbol" String="&lt;\s*&gt;\s*(?=&tag;|/\*)" />++			<!-- Tag after a comment on a new line -->+			<Detect2Chars context="ValidTag" attribute="Comment" char="/" char1="*" firstNonSpace="true" lookAhead="true" />++			<!-- Overwrite JavaScript rules to highlight tags within some contexts -->+			<IncludeRules context="FindDeclarationsWithNoTags" />+			<IncludeRules context="OverwriteJavaScript" />+		</context>++		<!-- Detect tags before starting a context -->+		<context name="Object-BeforeTag" attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop!Object">+			<IncludeRules context="ValidTag" />+		</context>+		<context name="Substitution-BeforeTag" attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop!Substitution">+			<IncludeRules context="ValidTag" />+		</context>+		<context name="EvaluatedCode-BeforeTag" attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop!EvaluatedCode">+			<IncludeRules context="ValidTag" />+		</context>++		<!-- TAGS:+		     NOTE & TODO: The following code is common for 'javascript-react.xml' and 'typescript-react.xml'+		     and is replicated in both files. Look for some way to avoid having repeated code, for example,+		     with a common XML file or with a generator script. The only drawback is that the+		     "EvaluatedCode" context includes "Normal". -->++		<!-- Highlight nested tags with comments in between.+		     NOTE: The highlighting of Tags after a multiline comment does not work with: lineEndContext="#pop" -->+		<context name="ValidTag" attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop">+			<RegExpr context="#stay" attribute="Normal Text" String="\s+(?=&lt;|/\*)" />+			<IncludeRules context="FindTags" />+			<IncludeRules context="AllComments" />+		</context>++		<!-- Start tag.+		     There are two contexts to find Tags:+		     * FindTags: For Tags within TypeScript code; invalid name tags aren't highlighted.+		     * FindTagsInTagContent: For Tag within another tag; highlight any Tag.+		                             Tags with invalid names are highlighted as "Error".+		-->+		<context name="FindTags" attribute="Normal Text" lineEndContext="#stay">+				<!-- Invalid Tag, do not highlight tags in these cases:+				     * "?" or "," after tag name:+				         <Tag ? ...+				         <Tag< ? ...+				         <Tag /* comment */ ? ...+				     * Invalid delimiter after comment (without spaces):+				         <Tag/* comment */#+				-->+			<RegExpr context="#pop" attribute="Symbol" String="&lt;(?=\s*&name;(?:(&lt;(?:\s*&mlComment;)*)?(?:\s*&mlComment;)*\s*[\?,]|(?:&mlComment;)+(?!&endTagName;|&baseName;|\{)))" />++			<!-- Empty tag (element) -->+			<RegExpr context="ElementTagContent" attribute="Element Tag" String="&lt;\s*&gt;" beginRegion="Element" />+			<!-- Detect Tags -->+			<RegExpr context="ElementTagFindType" attribute="Element Tag" String="&simpleTag;(?=&endTagName;)" beginRegion="Element" />+			<RegExpr context="ComponentTagFindType" attribute="Component Tag" String="&tag;(?=&endTagName;)" beginRegion="ComponentElement" />+			<!-- If a valid Tag was not detected -->+			<DetectChar context="#pop" attribute="Symbol" char="&lt;" />+		</context>++		<context name="FindTagsInTagContent" attribute="Normal Text" lineEndContext="#stay">+			<!-- Empty tag (element) -->+			<RegExpr context="ElementTagContent" attribute="Element Tag" String="&lt;\s*&gt;" beginRegion="Element" />+			<!-- Detect non-ASCII character in the tag name (component). This prevents highlighting as Element,+			     tag names that don't start with a non-ASCII character. -->+			<RegExpr context="ComponentTagNonASCII" attribute="Component Tag" String="&lt;\s*(?=(?:[a-z][a-z\d]*:)?(?:[a-z][a-z\d]*)?[^[:ascii:]])" beginRegion="ComponentElement" /> <!-- &simpleName; -->+			<!-- Element & component tags -->+			<RegExpr context="ElementTagFindType" attribute="Element Tag" String="&simpleTag;(?=[^\w\$\-\.:]|$|[\-\.]+(?:[^\w\$\-\.]|$)|:(?:[^a-zA-Z_\$]|$))" beginRegion="Element" />+			<RegExpr context="ComponentTagFindType" attribute="Component Tag" String="&tag;" beginRegion="ComponentElement" />+		</context>+		<!-- Highlight tag name with non-ASCII characters -->+		<context name="ComponentTagNonASCII" attribute="Normal Text" lineEndContext="#pop!ComponentTag" fallthrough="true" fallthroughContext="#pop!ComponentTag">+			<RegExpr context="#pop!ComponentTagFindType" attribute="Component Tag" String="&name;" />+		</context>++		<context name="FindEntityRefs" attribute="Normal Text" lineEndContext="#stay">+			<RegExpr context="#stay" attribute="EntityRef" String="&entref;" />+		</context>++		<!-- Type after the tag name. Ex: <C<number> /> -->+		<context name="ComponentTagFindType" attribute="Normal Text" lineEndContext="#pop!ComponentTag" fallthrough="true" fallthroughContext="#pop!ComponentTag">+			<DetectChar context="#pop!TypeInsideTag" attribute="Symbol" char="&lt;" />+		</context>+		<context name="ElementTagFindType" attribute="Normal Text" lineEndContext="#pop!ElementTag" fallthrough="true" fallthroughContext="#pop!ElementTag">+			<DetectChar context="#pop!TypeInsideTag" attribute="Symbol" char="&lt;" />+		</context>++		<!-- Type assertion after the tag name -->+		<context name="TypeInsideTag" attribute="Component Tag" lineEndContext="#stay">+			<DetectChar context="#pop!ComponentTag" attribute="Symbol" char="&gt;" />+			<IncludeRules context="DefaultTypeInsideTag" />+		</context>+		<context name="DefaultTypeInsideTag" attribute="Component Tag" lineEndContext="#stay">+			<DetectChar context="TypeInsideTag-AngleBracket" attribute="Symbol" char="&lt;" />+			<DetectChar context="TypeInsideTag-CurlyBracket" attribute="Symbol" char="{" />+			<DetectChar context="TypeInsideTag-SquareBracket" attribute="Symbol" char="[" />+			<DetectChar context="TypeInsideTag-RoundBracket" attribute="Symbol" char="(" />+			<IncludeRules context="AllComments" />+		</context>+		<context name="TypeInsideTag-AngleBracket" attribute="Component Tag" lineEndContext="#stay">+			<DetectChar context="#pop" attribute="Symbol" char="&gt;" />+			<IncludeRules context="DefaultTypeInsideTag" />+		</context>+		<context name="TypeInsideTag-CurlyBracket" attribute="Component Tag" lineEndContext="#stay">+			<DetectChar context="#pop" attribute="Symbol" char="}" />+			<IncludeRules context="DefaultTypeInsideTag" />+		</context>+		<context name="TypeInsideTag-SquareBracket" attribute="Component Tag" lineEndContext="#stay">+			<DetectChar context="#pop" attribute="Symbol" char="]" />+			<IncludeRules context="DefaultTypeInsideTag" />+		</context>+		<context name="TypeInsideTag-RoundBracket" attribute="Component Tag" lineEndContext="#stay">+			<DetectChar context="#pop" attribute="Symbol" char=")" />+			<IncludeRules context="DefaultTypeInsideTag" />+		</context>++		<!-- Inside the tag -->+		<context name="ElementTag" attribute="Normal Text" lineEndContext="#stay">+			<Detect2Chars context="#pop" attribute="Element Tag" char="/" char1="&gt;" endRegion="Element" />+			<DetectChar context="#pop!ElementTagContent" attribute="Element Tag" char="&gt;" />+			<IncludeRules context="DefaultTag" />+		</context>+		<context name="ComponentTag" attribute="Normal Text" lineEndContext="#stay">+			<Detect2Chars context="#pop" attribute="Component Tag" char="/" char1="&gt;" endRegion="ComponentElement" />+			<DetectChar context="#pop!ComponentTagContent" attribute="Component Tag" char="&gt;" />+			<IncludeRules context="DefaultTag" />+		</context>+		<context name="DefaultTag" attribute="Normal Text" lineEndContext="#stay">+			<RegExpr context="Attribute" attribute="Attribute" String="&nameWithBound;" />+			<IncludeRules context="FindEvaluatedCode" />+			<IncludeRules context="AllComments" />+			<RegExpr context="#stay" attribute="Error" String="\S+&name;" />+			<RegExpr context="#stay" attribute="Error" String="\S" />+		</context>++		<!-- Tag content: <Tag> content </Tag> -->+		<context name="ElementTagContent" attribute="Tag Content Text" lineEndContext="#stay">+			<RegExpr context="#pop" attribute="Element Tag" String="&lt;/\s*&gt;" endRegion="Element" />+			<RegExpr context="ElementTagEnd" attribute="Element Tag" String="&lt;/\s*&simpleName;" />+			<RegExpr context="ElementTagEnd" attribute="Element Tag" String="&lt;/\s*(?=[A-Z_\$])" /> <!-- Component tag (error) -->+			<IncludeRules context="DefaultTagContent" />+		</context>+		<context name="ComponentTagContent" attribute="Tag Content Text" lineEndContext="#stay">+			<RegExpr context="#pop" attribute="Component Tag" String="&lt;/\s*&gt;" endRegion="ComponentElement" />+			<RegExpr context="ComponentTagEnd" attribute="Component Tag" String="&lt;/\s*&name;" />+			<IncludeRules context="DefaultTagContent" />+		</context>+		<context name="DefaultTagContent" attribute="Tag Content Text" lineEndContext="#stay">+			<IncludeRules context="FindTagsInTagContent" />+			<IncludeRules context="FindEntityRefs" />+			<IncludeRules context="FindEvaluatedCode" />+			<DetectChar context="#stay" attribute="Error" char="&lt;" />+		</context>++		<context name="ElementTagEnd" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="#pop#pop" attribute="Element Tag" char="&gt;" endRegion="Element" />+			<RegExpr context="#stay" attribute="Error" String="\S" />+		</context>+		<context name="ComponentTagEnd" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="#pop#pop" attribute="Component Tag" char="&gt;" endRegion="ComponentElement" />+			<RegExpr context="#stay" attribute="Error" String="\S" />+		</context>++		<!-- Tag attribute -->+		<context name="Attribute" attribute="Normal Text" lineEndContext="#stay">+			<RegExpr context="#pop" attribute="Error" String="\=(?=\s*/?&gt;)" />+			<DetectChar context="#pop!Value" attribute="Symbol" char="=" />+			<IncludeRules context="FindEndTag" />+			<DetectChar context="#pop" char="{" lookAhead="true" /> <!-- EvaluatedCode -->+			<IncludeRules context="AllComments" />+			<RegExpr context="#stay" attribute="Attribute" String="&nameWithBound;" />+			<RegExpr context="#stay" attribute="Error" String="\S+&name;" />+			<RegExpr context="#stay" attribute="Error" String="\S" />+		</context>++		<context name="Value" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="#pop!ValueDQ" attribute="Value" char="&quot;" />+			<DetectChar context="#pop!ValueSQ" attribute="Value" char="&apos;" />+			<DetectChar context="#pop" char="{" lookAhead="true" /> <!-- EvaluatedCode -->+			<IncludeRules context="FindEndTag" />+			<IncludeRules context="AllComments" />+			<RegExpr context="#stay" attribute="Error" String="\S" />+		</context>+		<context name="ValueDQ" attribute="Value" lineEndContext="#stay">+			<DetectChar context="#pop" attribute="Value" char="&quot;" />+			<IncludeRules context="FindEntityRefs" />+		</context>+		<context name="ValueSQ" attribute="Value" lineEndContext="#stay">+			<DetectChar context="#pop" attribute="Value" char="&apos;" />+			<IncludeRules context="FindEntityRefs" />+		</context>++		<context name="FindEndTag" attribute="Normal Text" lineEndContext="#stay">+			<Detect2Chars context="#pop" char="/" char1="&gt;" lookAhead="true" />+			<DetectChar context="#pop" char="&gt;" lookAhead="true" />+		</context>++		<context name="FindEvaluatedCode" attribute="Normal Text" lineEndContext="#stay">+			<!-- Find tags and send to the "EvaluatedCode" context -->+			<DetectChar context="EvaluatedCode-BeforeTag" attribute="Code Brackets" char="{" beginRegion="Code" />+		</context>+		<context name="EvaluatedCode" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="#pop" attribute="Code Brackets" char="}" endRegion="Code" />+			<IncludeRules context="Normal" />+		</context>++		<context name="AllComments" attribute="Normal Text" lineEndContext="#stay">+			<!-- TypeScript uses this for comments -->+			<IncludeRules context="FindComments##JavaScript" />+		</context>++	</contexts>++	<itemDatas>+		<itemData name="Normal Text"      defStyleNum="dsNormal" spellChecking="false" />+		<itemData name="Comment"          defStyleNum="dsComment" />++		<itemData name="Tag Content Text" defStyleNum="dsNormal" />+		<itemData name="Element Tag"      defStyleNum="dsKeyword" spellChecking="false" />+		<itemData name="Component Tag"    defStyleNum="dsFunction" bold="1" spellChecking="false" />+		<itemData name="Attribute"        defStyleNum="dsOthers" spellChecking="false" />+		<itemData name="Value"            defStyleNum="dsString" spellChecking="false" />+		<itemData name="EntityRef"        defStyleNum="dsDecVal" spellChecking="false" />+		<itemData name="Code Brackets"    defStyleNum="dsVariable" spellChecking="false" />+		<itemData name="Error"            defStyleNum="dsError" spellChecking="false" />++		<!-- itemDatas in JavaScript XML file -->+		<itemData name="Symbol"           defStyleNum="dsOperator" />+		<itemData name="ControlFlow"      defStyleNum="dsControlFlow" spellChecking="false" />+		<itemData name="Keyword"          defStyleNum="dsKeyword" spellChecking="false" />+		<itemData name="Reserved"         defStyleNum="dsKeyword" italic="true" spellChecking="false" />+		<itemData name="Module"           defStyleNum="dsImport" spellChecking="false" />+		<itemData name="Template"         defStyleNum="dsVerbatimString" />+		<itemData name="Substitution"     defStyleNum="dsSpecialChar" spellChecking="false" />+		<itemData name="Special Operators" defStyleNum="dsKeyword" spellChecking="false" />+	</itemDatas>++</highlighting>++<general>+	<keywords casesensitive="1" />+	<comments>+		<comment name="singleLine" start="//" />+		<comment name="multiLine" start="/*" end="*/" />+	</comments>+</general>++</language>+<!-- kate: replace-tabs off; tab-width 3; indent-width 3; remove-trailing-spaces mod; dynamic-word-wrap off; -->
syntax/javascript.xml view
@@ -1,293 +1,2029 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE language SYSTEM "language.dtd" [-  <!ENTITY identifier "([a-zA-Z_$]|[^[:ascii:]])([\w$]|[^[:ascii:]])*">-]>-<!-- Author: Anders Lund <anders@alweb.dk> //-->-<!-- Minor changes: Joseph Wenninger <jowenn@kde.org> //-->-<!-- Full JavaScript 1.0 support by Whitehawk Stormchaser //-->-<language name="JavaScript" version="10" kateversion="5.0" section="Scripts" extensions="*.js;*.kwinscript;*.julius"-          mimetype="text/x-javascript;application/x-javascript;application/javascript;text/javascript" indenter="cstyle"-          author="Anders Lund (anders@alweb.dk), Joseph Wenninger (jowenn@kde.org), Whitehawk Stormchaser (zerokode@gmx.net)" license="">-  <highlighting>-    <list name="controlflow">-      <item>await</item>-      <item>break</item>-      <item>case</item>-      <item>catch</item>-      <item>continue</item>-      <item>debugger</item>-      <item>do</item>-      <item>else</item>-      <item>finally</item>-      <item>for</item>-      <item>if</item>-      <item>return</item>-      <item>switch</item>-      <item>throw</item>-      <item>try</item>-      <item>while</item>-      <item>with</item>-    </list>-    <list name="keywords">-      <item>const</item>-      <item>delete</item>-      <item>function</item>-      <item>in</item>-      <item>instanceof</item>-      <item>new</item>-      <item>of</item>-      <item>this</item>-      <item>typeof</item>-      <item>var</item>-      <item>void</item>-    </list>-    <list name="reserved">-      <item>async</item>-      <item>class</item>-      <item>enum</item>-      <item>extends</item>-      <item>super</item>--      <!-- The following keywords are reserved only in strict-mode -->-      <item>arguments</item>-      <item>implements</item>-      <item>interface</item>-      <item>let</item>-      <item>private</item>-      <item>protected</item>-      <item>public</item>-      <item>static</item>-      <item>yield</item>-    </list>-    <list name="module">-      <item>import</item>-      <item>from</item>-      <item>as</item>-      <item>default</item>-      <item>export</item>-      <item>package</item>-    </list>-    <list name="primitives">-      <item>Infinity</item>-      <item>NaN</item>-      <item>false</item>-      <item>null</item>-      <item>true</item>-      <item>undefined</item>-    </list>-    <contexts>--      <!-- Shebang: ("#!") Detect shebang and fallthrough to Normal -->-      <!-- Based on the similar clause from prolog.xml.-        This uses "lineEmptyContext" & "lineEndContext" to force the highlight only on the first line.-      -->-      <context name="Shebang" attribute="Normal Text" lineEndContext="Normal" lineEmptyContext="Normal" fallthrough="true" fallthroughContext="Normal" >-        <Detect2Chars column="0" char="#" char1="!" context="Shebang Line" attribute="Comment" />-      </context>-      <context name="Shebang Line" attribute="Comment" lineEndContext="#pop!Normal">-      </context>--      <context attribute="Normal Text" lineEndContext="#stay" name="Normal">-        <DetectSpaces/>-        <StringDetect attribute="Region Marker" context="region_marker" String="//BEGIN" beginRegion="Region1" />-        <StringDetect attribute="Region Marker" context="region_marker" String="//END" endRegion="Region1" />--        <Float attribute="Float" context="NoRegExp" />-        <!-- Invalid Binary, Octal or Hex -->-        <RegExpr attribute="Error" context="NoRegExp" String="\b0(b[01]*[2-9a-z]|o[0-7]*[89a-z]|x[0-9a-f]*[g-z])\w*\b" insensitive="true" />-        <HlCHex attribute="Hex" context="NoRegExp" />-        <RegExpr attribute="Octal" context="NoRegExp" String="\b0[oO][0-7]+" />-        <RegExpr attribute="Binary" context="NoRegExp" String="\b0[bB][01]+" />-        <Int attribute="Decimal" context="NoRegExp" />-        <AnyChar context="NoRegExp" String="])" />--        <keyword attribute="ControlFlow" String="controlflow" />-        <keyword attribute="Keyword" String="keywords" />-        <keyword attribute="Reserved" String="reserved" />-        <keyword attribute="Keyword" context="NoRegExp" String="primitives" />-        <keyword attribute="Module" String="module" />--        <IncludeRules context="FindStrings" />--        <!--DetectIdentifier-->-        <RegExpr attribute="Objects" context="Object Member" String="&identifier;(?=\s*\.)" />-        <!--DetectIdentifier-->-        <RegExpr attribute="Object Member" context="NoRegExp" String="&identifier;(?=\s*\()" />-        <DetectChar context="Object Member" char="." />-        <!--DetectIdentifier-->-        <!-- Do not start RegExp after non-ASCII characters (see bug #393633) -->-        <RegExpr context="NoRegExp" String="&identifier;" />-        <RegExpr context="NoRegExp" String="[a-zA-Z_$][\w$]*" />--        <IncludeRules context="FindComments" />--        <!-- E4X extension (=xml inside JavaScript), see bug #373713 -->-        <Detect2Chars attribute="Normal Text" context="NoRegExp" char="&lt;" char1="/" />-        <Detect2Chars attribute="Normal Text" context="NoRegExp" char="/" char1="&gt;" />-        <DetectChar attribute="Regular Expression" context="(regex caret first check)" char="/" />--        <DetectChar attribute="Symbol" context="Object" char="{" beginRegion="Brace" />-        <DetectChar attribute="Symbol" context="Conditional Expression" char="?" />--        <Detect2Chars context="#stay" attribute="Special Operators" char="=" char1="&gt;" />-        <AnyChar attribute="Symbol" String=":!%&amp;+,-/.*&lt;=&gt;?|~^&#59;" />-      </context>--      <context attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop" name="Object Member">-        <DetectChar context="#stay" char="." />-        <!--DetectIdentifier-->-        <RegExpr attribute="Objects" context="#stay" String="&identifier;(?=\s*\.)" />-        <!--DetectIdentifier-->-        <RegExpr attribute="Object Member" context="#pop!NoRegExp" String="&identifier;" />-        <IncludeRules context="NoRegExp" />-      </context>--      <context attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop" name="NoRegExp">-        <Detect2Chars context="#pop" lookAhead="true" char="/" char1="/" />-        <Detect2Chars context="#pop" lookAhead="true" char="/" char1="*" />-        <DetectChar context="#pop" char="/" />-        <DetectSpaces/>-      </context>--      <context attribute="Normal Text" lineEndContext="#stay" name="Conditional Expression">-        <DetectChar context="#pop" char=":" />-        <IncludeRules context="Normal" />-      </context>--      <context attribute="Normal Text" lineEndContext="#stay" name="Object">-        <!-- Mostly required for define: in switch blocks -->-        <keyword attribute="Keyword" String="keywords" />-        <RegExpr attribute="ControlFlow" String="\bdefault(?=\s*:)" />-        <!--DetectIdentifier-->-        <RegExpr attribute="JSON" String="&identifier;\s*(?=:)" />-        <DetectChar attribute="Symbol" char="}" endRegion="Brace" context="#pop" />-        <IncludeRules context="Normal" />-      </context>--      <context name="FindStrings" attribute="Normal Text" lineEndContext="#stay">-        <DetectChar attribute="Template" context="Template" char="`" />-        <StringDetect attribute="Template" context="RawTemplate" String="String.raw`" />--        <DetectChar attribute="String" context="String" char="&quot;" />-        <DetectChar attribute="String" context="String SQ" char="'" />-      </context>--      <context attribute="String" lineEndContext="#pop" name="String">-        <IncludeRules context="Escape" />-        <DetectChar attribute="String" context="#pop" char="&quot;" />-      </context>-      <context attribute="String" lineEndContext="#pop" name="String SQ">-        <IncludeRules context="Escape" />-        <DetectChar attribute="String" context="#pop" char="'" />-      </context>-      -      <context attribute="Normal Text" lineEndContext="#stay" name="Escape">-        <LineContinue attribute="Escape" context="#stay" />-        <!-- Hexadecimal, unicode & octal -->-        <RegExpr attribute="Escape" context="#stay" String="\\(x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|u\{[0-9a-fA-F]+\}|[0-3][0-7]{1,2}|[4-7][0-7]|[1-7])" />-        <Detect2Chars attribute="Error" context="#stay" char="\" char1="x" />-        <Detect2Chars attribute="Error" context="#stay" char="\" char1="u" />-        <DetectChar attribute="Escape" context="Character Escape" char="\" />-      </context>-      <context attribute="Escape" lineEndContext="#pop" name="Character Escape">-        <AnyChar attribute="Reserved Char. Escape" context="#pop" String="0bfnrtv" /> <!-- Reserved Char. Escape. Also: "'/ -->-        <RegExpr attribute="Escape" context="#pop" String="." /> <!-- Literal Char. Escape -->-      </context>--      <context attribute="Template" lineEndContext="#stay" name="Template">-        <IncludeRules context="Escape" />-        <Detect2Chars attribute="Substitution" context="Substitution" char="$" char1="{" />-        <DetectChar attribute="Template" context="#pop" char="`" />-      </context>-      <context attribute="Template" lineEndContext="#stay" name="RawTemplate">-        <DetectChar attribute="Template" context="#pop" char="`" />-      </context>-      <context name="Substitution" attribute="Normal Text" lineEndContext="#stay">-          <DetectChar attribute="Substitution" char="}" context="#pop"/>-          <IncludeRules context="Normal"/>-      </context>--      <context name="FindComments" attribute="Normal Text" lineEndContext="#stay">-        <IncludeRules context="##Doxygen" />-        <Detect2Chars attribute="Comment" context="Comment" char="/" char1="/" />-        <Detect2Chars attribute="Comment" context="Multi/inline Comment" char="/" char1="*" beginRegion="Comment" />-      </context>-      <context attribute="Comment" lineEndContext="#pop" name="Comment">-        <IncludeRules context="##Alerts" />-        <IncludeRules context="##Modelines" />-      </context>-      <context attribute="Comment" lineEndContext="#stay" name="Multi/inline Comment">-        <IncludeRules context="##Alerts" />-        <IncludeRules context="##Modelines" />-        <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" endRegion="Comment" />-      </context>--      <context attribute="Regular Expression" lineEndContext="#stay" name="Regular Expression">-        <RegExpr attribute="Regular Expression" context="#pop#pop" String="/\w*" />-        <RegExpr attribute="Pattern Internal Operator" String="\{[\d, ]+\}" />-        <RegExpr attribute="Pattern Internal Operator" String="\\[bB]" />-        <RegExpr attribute="Pattern Character Class" String="\\[nrtvfDdSsWw]" />-        <DetectChar attribute="Pattern Character Class" context="(charclass caret first check)" char="[" />-        <RegExpr attribute="Pattern Internal Operator" String="\\." />-        <RegExpr attribute="Pattern Internal Operator" String="\$(?=/)" />-        <AnyChar attribute="Pattern Internal Operator" String="?+*()|" />-      </context>-      <context attribute="Pattern Character Class" lineEndContext="#stay" name="Regular Expression Character Class">-        <RegExpr String="\\[\[\]]" />-        <RegExpr attribute="Pattern Internal Operator" String="\\." />-        <DetectChar attribute="Pattern Character Class" context="#pop#pop" char="]" />-      </context>-      <context attribute="Pattern Internal Operator" lineEndContext="#pop" name="(regex caret first check)" fallthrough="true" fallthroughContext="Regular Expression">-        <DetectChar attribute="Pattern Internal Operator" context="Regular Expression" char="^" />-      </context>-      <context attribute="Pattern Internal Operator" lineEndContext="#pop" name="(charclass caret first check)" fallthrough="true" fallthroughContext="Regular Expression Character Class">-        <DetectChar attribute="Pattern Internal Operator" context="Regular Expression Character Class" char="^" />-      </context>--      <context name="region_marker" attribute="Region Marker" lineEndContext="#pop" >-        <DetectIdentifier/>-        <DetectSpaces/>-      </context>-    </contexts>-    <itemDatas>-      <itemData name="Normal Text"  defStyleNum="dsNormal"  spellChecking="false" />-      <itemData name="Keyword"      defStyleNum="dsKeyword" spellChecking="false" />-      <itemData name="ControlFlow"  defStyleNum="dsControlFlow" spellChecking="false" />-      <itemData name="Reserved"     defStyleNum="dsKeyword" italic="true" spellChecking="false" />-      <itemData name="Module"       defStyleNum="dsImport" spellChecking="false" />-      <itemData name="Objects"      defStyleNum="dsVariable" spellChecking="false" />-      <itemData name="Object Member" defStyleNum="dsAttribute" spellChecking="false" />-      <itemData name="Special Operators" defStyleNum="dsKeyword" spellChecking="false" />--      <itemData name="Decimal"      defStyleNum="dsDecVal" spellChecking="false" />-      <itemData name="Octal"        defStyleNum="dsBaseN" spellChecking="false" />-      <itemData name="Hex"          defStyleNum="dsBaseN" spellChecking="false" />-      <itemData name="Binary"       defStyleNum="dsBaseN" spellChecking="false" />-      <itemData name="Float"        defStyleNum="dsFloat" spellChecking="false" />-      <itemData name="Escape"       defStyleNum="dsSpecialChar" spellChecking="false" />-      <itemData name="Reserved Char. Escape" defStyleNum="dsSpecialChar" bold="1" spellChecking="false" />-      <itemData name="String"       defStyleNum="dsString" />-      <itemData name="Template"     defStyleNum="dsVerbatimString" />-      <itemData name="Substitution" defStyleNum="dsSpecialChar" spellChecking="false" />--      <itemData name="Comment"      defStyleNum="dsComment" />-      <itemData name="Symbol"       defStyleNum="dsOperator" spellChecking="false" />-      <itemData name="Regular Expression" defStyleNum="dsSpecialString" spellChecking="false" />-      <itemData name="Pattern Internal Operator" defStyleNum="dsSpecialChar" spellChecking="false" />-      <itemData name="Pattern Character Class" defStyleNum="dsSpecialChar" spellChecking="false" />-      <itemData name="Region Marker" defStyleNum="dsRegionMarker" spellChecking="false" />-      <itemData name="JSON"         defStyleNum="dsDataType" spellChecking="false" />-      <itemData name="Error"        defStyleNum="dsError" spellChecking="false"/>-    </itemDatas>-  </highlighting>-  <general>-    <comments>-      <comment name="singleLine" start="//" />-      <comment name="multiLine" start="/*" end="*/" />-    </comments>-    <keywords casesensitive="1" />-  </general>+  <!ENTITY identifier "[a-zA-Z_$[:^ascii:]][\w$[:^ascii:]]*">+]>++<!--+  Author: Anders Lund <anders@alweb.dk>+  Minor changes: Joseph Wenninger <jowenn@kde.org>+  Full JavaScript 1.0 support by Whitehawk Stormchaser++  Last Update: Nov. 20, 2019 (Version 14)++  IMPORTANT: This syntax highlighting definition depends on+  JavaScript React (JSX), TypeScript and QML.+-->+<language name="JavaScript" version="14" kateversion="5.0" section="Scripts" extensions="*.js;*.kwinscript;*.julius"+          mimetype="text/x-javascript;application/x-javascript;application/javascript;text/javascript" indenter="cstyle"+          author="Anders Lund (anders@alweb.dk), Joseph Wenninger (jowenn@kde.org), Whitehawk Stormchaser (zerokode@gmx.net)" license="">++  <highlighting>++    <list name="controlflow">+      <item>await</item>+      <item>break</item>+      <item>case</item>+      <item>catch</item>+      <item>continue</item>+      <item>debugger</item>+      <item>do</item>+      <item>else</item>+      <item>finally</item>+      <item>for</item>+      <item>if</item>+      <item>return</item>+      <item>switch</item>+      <item>throw</item>+      <item>try</item>+      <item>while</item>+      <item>with</item>+    </list>+    <list name="keywords">+      <item>const</item>+      <item>delete</item>+      <item>function</item>+      <item>in</item>+      <item>instanceof</item>+      <item>new</item>+      <item>of</item>+      <item>this</item>+      <item>typeof</item>+      <item>var</item>+      <item>void</item>+    </list>+    <list name="reserved">+      <item>async</item>+      <item>class</item>+      <item>enum</item>+      <item>extends</item>+      <item>super</item>++      <!-- The following keywords are reserved only in strict-mode -->+      <item>arguments</item>+      <item>implements</item>+      <item>interface</item>+      <item>let</item>+      <item>private</item>+      <item>protected</item>+      <item>public</item>+      <item>static</item>+      <item>yield</item>+    </list>+    <list name="module">+      <item>import</item>+      <item>from</item>+      <item>as</item>+      <item>default</item>+      <item>export</item>+      <item>package</item>+    </list>+    <list name="primitives">+      <item>Infinity</item>+      <item>NaN</item>+      <item>false</item>+      <item>null</item>+      <item>true</item>+      <item>undefined</item>+    </list>++    <!-- Built-in Classes, Functions & Constants -->++    <list name="class_builtin">+      <item>Array</item>+      <item>ArrayBuffer</item>+      <item>Atomics</item>+      <item>Boolean</item>+      <item>BigInt</item>+      <item>BigInt64Array</item>+      <item>BigUint64Array</item>+      <item>DataView</item>+      <item>Date</item>+      <item>Float32Array</item>+      <item>Float64Array</item>+      <item>Function</item>+      <item>Generator</item>+      <item>GeneratorFunction</item>+      <item>Int8Array</item>+      <item>Int16Array</item>+      <item>Int32Array</item>+      <item>Intl</item>+      <item>Map</item>+      <item>Object</item>+      <item>Proxy</item>+      <item>Reflect</item>+      <item>RegExp</item>+      <item>Set</item>+      <item>SharedArrayBuffer</item>+      <item>SIMD</item>+      <item>String</item>+      <item>Symbol</item>+      <item>TypedArray</item>+      <item>Uint8Array</item>+      <item>Uint16Array</item>+      <item>Uint32Array</item>+      <item>Uint8ClampedArray</item>+      <item>WeakMap</item>+      <item>WeakSet</item>+      <!-- Class: Error -->+      <item>Error</item>+      <item>EvalError</item>+      <item>InternalError</item>+      <item>RangeError</item>+      <item>ReferenceError</item>+      <item>SyntaxError</item>+      <item>TypeError</item>+      <item>URIError</item>+      <!-- Class: Number -->+      <item>Number</item>+      <!-- Class: Math -->+      <item>Math</item>+      <!-- Class: Promise -->+      <item>Promise</item>+      <!-- Other -->+      <item>JSON</item>+      <item>console</item>+      <item>process</item>+    </list>+    <!-- DOM Classes -->+    <list name="class_dom">+      <item>AnalyserNode</item>+      <item>ArrayBufferView</item>+      <item>Attr</item>+      <item>AudioBuffer</item>+      <item>AudioBufferSourceNode</item>+      <item>AudioContext</item>+      <item>AudioDestinationNode</item>+      <item>AudioListener</item>+      <item>AudioNode</item>+      <item>AudioParam</item>+      <item>BatteryManager</item>+      <item>BeforeUnloadEvent</item>+      <item>BiquadFilterNode</item>+      <item>Blob</item>+      <item>BufferSource</item>+      <item>ByteString</item>+      <item>CSS</item>+      <item>CSSConditionRule</item>+      <item>CSSCounterStyleRule</item>+      <item>CSSGroupingRule</item>+      <item>CSSMatrix</item>+      <item>CSSMediaRule</item>+      <item>CSSPageRule</item>+      <item>CSSPrimitiveValue</item>+      <item>CSSRule</item>+      <item>CSSRuleList</item>+      <item>CSSStyleDeclaration</item>+      <item>CSSStyleRule</item>+      <item>CSSStyleSheet</item>+      <item>CSSSupportsRule</item>+      <item>CSSValue</item>+      <item>CSSValueList</item>+      <item>CanvasGradient</item>+      <item>CanvasImageSource</item>+      <item>CanvasPattern</item>+      <item>CanvasRenderingContext2D</item>+      <item>ChannelMergerNode</item>+      <item>ChannelSplitterNode</item>+      <item>CharacterData</item>+      <item>ChromeWorker</item>+      <item>CloseEvent</item>+      <item>Comment</item>+      <item>CompositionEvent</item>+      <item>Console</item>+      <item>ConvolverNode</item>+      <item>Coordinates</item>+      <item>Credential</item>+      <item>CredentialsContainer</item>+      <item>Crypto</item>+      <item>CryptoKey</item>+      <item>CustomEvent</item>+      <item>DOMError</item>+      <item>DOMException</item>+      <item>DOMHighResTimeStamp</item>+      <item>DOMImplementation</item>+      <item>DOMString</item>+      <item>DOMStringList</item>+      <item>DOMStringMap</item>+      <item>DOMTimeStamp</item>+      <item>DOMTokenList</item>+      <item>DataTransfer</item>+      <item>DataTransferItem</item>+      <item>DataTransferItemList</item>+      <item>DedicatedWorkerGlobalScope</item>+      <item>DelayNode</item>+      <item>DeviceProximityEvent</item>+      <item>DirectoryEntry</item>+      <item>DirectoryEntrySync</item>+      <item>DirectoryReader</item>+      <item>DirectoryReaderSync</item>+      <item>Document</item>+      <item>DocumentFragment</item>+      <item>DocumentTouch</item>+      <item>DocumentType</item>+      <item>DragEvent</item>+      <item>DynamicsCompressorNode</item>+      <item>Element</item>+      <item>Entry</item>+      <item>EntrySync</item>+      <item>ErrorEvent</item>+      <item>Event</item>+      <item>EventListener</item>+      <item>EventSource</item>+      <item>EventTarget</item>+      <item>FederatedCredential</item>+      <item>FetchEvent</item>+      <item>File</item>+      <item>FileEntry</item>+      <item>FileEntrySync</item>+      <item>FileException</item>+      <item>FileList</item>+      <item>FileReader</item>+      <item>FileReaderSync</item>+      <item>FileSystem</item>+      <item>FileSystemSync</item>+      <item>FontFace</item>+      <item>FormData</item>+      <item>GainNode</item>+      <item>Gamepad</item>+      <item>GamepadButton</item>+      <item>GamepadEvent</item>+      <item>Geolocation</item>+      <item>GlobalEventHandlers</item>+      <item>HTMLAnchorElement</item>+      <item>HTMLAreaElement</item>+      <item>HTMLAudioElement</item>+      <item>HTMLBRElement</item>+      <item>HTMLBaseElement</item>+      <item>HTMLBodyElement</item>+      <item>HTMLButtonElement</item>+      <item>HTMLCanvasElement</item>+      <item>HTMLCollection</item>+      <item>HTMLContentElement</item>+      <item>HTMLDListElement</item>+      <item>HTMLDataElement</item>+      <item>HTMLDataListElement</item>+      <item>HTMLDialogElement</item>+      <item>HTMLDivElement</item>+      <item>HTMLDocument</item>+      <item>HTMLElement</item>+      <item>HTMLEmbedElement</item>+      <item>HTMLFieldSetElement</item>+      <item>HTMLFontElement</item>+      <item>HTMLFormControlsCollection</item>+      <item>HTMLFormElement</item>+      <item>HTMLHRElement</item>+      <item>HTMLHeadElement</item>+      <item>HTMLHeadingElement</item>+      <item>HTMLHtmlElement</item>+      <item>HTMLIFrameElement</item>+      <item>HTMLImageElement</item>+      <item>HTMLInputElement</item>+      <item>HTMLKeygenElement</item>+      <item>HTMLLIElement</item>+      <item>HTMLLabelElement</item>+      <item>HTMLLegendElement</item>+      <item>HTMLLinkElement</item>+      <item>HTMLMapElement</item>+      <item>HTMLMediaElement</item>+      <item>HTMLMetaElement</item>+      <item>HTMLMeterElement</item>+      <item>HTMLModElement</item>+      <item>HTMLOListElement</item>+      <item>HTMLObjectElement</item>+      <item>HTMLOptGroupElement</item>+      <item>HTMLOptionElement</item>+      <item>HTMLOptionsCollection</item>+      <item>HTMLOutputElement</item>+      <item>HTMLParagraphElement</item>+      <item>HTMLParamElement</item>+      <item>HTMLPreElement</item>+      <item>HTMLProgressElement</item>+      <item>HTMLQuoteElement</item>+      <item>HTMLScriptElement</item>+      <item>HTMLSelectElement</item>+      <item>HTMLShadowElement</item>+      <item>HTMLSourceElement</item>+      <item>HTMLSpanElement</item>+      <item>HTMLStyleElement</item>+      <item>HTMLTableCaptionElement</item>+      <item>HTMLTableCellElement</item>+      <item>HTMLTableColElement</item>+      <item>HTMLTableDataCellElement</item>+      <item>HTMLTableElement</item>+      <item>HTMLTableHeaderCellElement</item>+      <item>HTMLTableRowElement</item>+      <item>HTMLTableSectionElement</item>+      <item>HTMLTextAreaElement</item>+      <item>HTMLTimeElement</item>+      <item>HTMLTitleElement</item>+      <item>HTMLTrackElement</item>+      <item>HTMLUListElement</item>+      <item>HTMLUnknownElement</item>+      <item>HTMLVideoElement</item>+      <item>HashChangeEvent</item>+      <item>History</item>+      <item>IDBCursor</item>+      <item>IDBCursorWithValue</item>+      <item>IDBDatabase</item>+      <item>IDBEnvironment</item>+      <item>IDBFactory</item>+      <item>IDBIndex</item>+      <item>IDBKeyRange</item>+      <item>IDBMutableFile</item>+      <item>IDBObjectStore</item>+      <item>IDBOpenDBRequest</item>+      <item>IDBRequest</item>+      <item>IDBTransaction</item>+      <item>IDBVersionChangeEvent</item>+      <item>IIRFilterNode</item>+      <item>IdentityManager</item>+      <item>ImageBitmap</item>+      <item>ImageBitmapFactories</item>+      <item>ImageData</item>+      <item>Index</item>+      <item>InputDeviceCapabilities</item>+      <item>InputEvent</item>+      <item>InstallEvent</item>+      <item>InstallTrigger</item>+      <item>KeyboardEvent</item>+      <item>LinkStyle</item>+      <item>LocalFileSystem</item>+      <item>LocalFileSystemSync</item>+      <item>Location</item>+      <item>MIDIAccess</item>+      <item>MIDIConnectionEvent</item>+      <item>MIDIInput</item>+      <item>MIDIInputMap</item>+      <item>MIDIOutputMap</item>+      <item>MediaElementAudioSourceNode</item>+      <item>MediaError</item>+      <item>MediaKeyMessageEvent</item>+      <item>MediaKeySession</item>+      <item>MediaKeyStatusMap</item>+      <item>MediaKeySystemAccess</item>+      <item>MediaKeySystemConfiguration</item>+      <item>MediaKeys</item>+      <item>MediaRecorder</item>+      <item>MediaStream</item>+      <item>MediaStreamAudioDestinationNode</item>+      <item>MediaStreamAudioSourceNode</item>+      <item>MessageChannel</item>+      <item>MessageEvent</item>+      <item>MessagePort</item>+      <item>MouseEvent</item>+      <item>MutationObserver</item>+      <item>MutationRecord</item>+      <item>NamedNodeMap</item>+      <item>Navigator</item>+      <item>NavigatorConcurrentHardware</item>+      <item>NavigatorGeolocation</item>+      <item>NavigatorID</item>+      <item>NavigatorLanguage</item>+      <item>NavigatorOnLine</item>+      <item>Node</item>+      <item>NodeFilter</item>+      <item>NodeIterator</item>+      <item>NodeList</item>+      <item>NonDocumentTypeChildNode</item>+      <item>Notification</item>+      <item>OfflineAudioCompletionEvent</item>+      <item>OfflineAudioContext</item>+      <item>OscillatorNode</item>+      <item>PageTransitionEvent</item>+      <item>PannerNode</item>+      <item>ParentNode</item>+      <item>PasswordCredential</item>+      <item>Path2D</item>+      <item>PaymentAddress</item>+      <item>PaymentRequest</item>+      <item>PaymentResponse</item>+      <item>Performance</item>+      <item>PerformanceEntry</item>+      <item>PerformanceFrameTiming</item>+      <item>PerformanceMark</item>+      <item>PerformanceMeasure</item>+      <item>PerformanceNavigation</item>+      <item>PerformanceNavigationTiming</item>+      <item>PerformanceObserver</item>+      <item>PerformanceObserverEntryList</item>+      <item>PerformanceResourceTiming</item>+      <item>PerformanceTiming</item>+      <item>PeriodicSyncEvent</item>+      <item>PeriodicWave</item>+      <item>Plugin</item>+      <item>Point</item>+      <item>PointerEvent</item>+      <item>PopStateEvent</item>+      <item>PortCollection</item>+      <item>Position</item>+      <item>PositionError</item>+      <item>PositionOptions</item>+      <item>PresentationConnectionClosedEvent</item>+      <item>PresentationConnectionList</item>+      <item>PresentationReceiver</item>+      <item>ProcessingInstruction</item>+      <item>ProgressEvent</item>+      <item>PromiseRejectionEvent</item>+      <item>PushEvent</item>+      <item>PushRegistrationManager</item>+      <item>RTCCertificate</item>+      <item>RTCConfiguration</item>+      <item>RTCPeerConnection</item>+      <item>RTCSessionDescriptionCallback</item>+      <item>RTCStatsReport</item>+      <item>RadioNodeList</item>+      <item>RandomSource</item>+      <item>Range</item>+      <item>ReadableByteStream</item>+      <item>RenderingContext</item>+      <item>SVGAElement</item>+      <item>SVGAngle</item>+      <item>SVGAnimateColorElement</item>+      <item>SVGAnimateElement</item>+      <item>SVGAnimateMotionElement</item>+      <item>SVGAnimateTransformElement</item>+      <item>SVGAnimatedAngle</item>+      <item>SVGAnimatedBoolean</item>+      <item>SVGAnimatedEnumeration</item>+      <item>SVGAnimatedInteger</item>+      <item>SVGAnimatedLength</item>+      <item>SVGAnimatedLengthList</item>+      <item>SVGAnimatedNumber</item>+      <item>SVGAnimatedNumberList</item>+      <item>SVGAnimatedPoints</item>+      <item>SVGAnimatedPreserveAspectRatio</item>+      <item>SVGAnimatedRect</item>+      <item>SVGAnimatedString</item>+      <item>SVGAnimatedTransformList</item>+      <item>SVGAnimationElement</item>+      <item>SVGCircleElement</item>+      <item>SVGClipPathElement</item>+      <item>SVGCursorElement</item>+      <item>SVGDefsElement</item>+      <item>SVGDescElement</item>+      <item>SVGElement</item>+      <item>SVGEllipseElement</item>+      <item>SVGEvent</item>+      <item>SVGFilterElement</item>+      <item>SVGFontElement</item>+      <item>SVGFontFaceElement</item>+      <item>SVGFontFaceFormatElement</item>+      <item>SVGFontFaceNameElement</item>+      <item>SVGFontFaceSrcElement</item>+      <item>SVGFontFaceUriElement</item>+      <item>SVGForeignObjectElement</item>+      <item>SVGGElement</item>+      <item>SVGGlyphElement</item>+      <item>SVGGradientElement</item>+      <item>SVGHKernElement</item>+      <item>SVGImageElement</item>+      <item>SVGLength</item>+      <item>SVGLengthList</item>+      <item>SVGLineElement</item>+      <item>SVGLinearGradientElement</item>+      <item>SVGMPathElement</item>+      <item>SVGMaskElement</item>+      <item>SVGMatrix</item>+      <item>SVGMissingGlyphElement</item>+      <item>SVGNumber</item>+      <item>SVGNumberList</item>+      <item>SVGPathElement</item>+      <item>SVGPatternElement</item>+      <item>SVGPoint</item>+      <item>SVGPolygonElement</item>+      <item>SVGPolylineElement</item>+      <item>SVGPreserveAspectRatio</item>+      <item>SVGRadialGradientElement</item>+      <item>SVGRect</item>+      <item>SVGRectElement</item>+      <item>SVGSVGElement</item>+      <item>SVGScriptElement</item>+      <item>SVGSetElement</item>+      <item>SVGStopElement</item>+      <item>SVGStringList</item>+      <item>SVGStylable</item>+      <item>SVGStyleElement</item>+      <item>SVGSwitchElement</item>+      <item>SVGSymbolElement</item>+      <item>SVGTRefElement</item>+      <item>SVGTSpanElement</item>+      <item>SVGTests</item>+      <item>SVGTextElement</item>+      <item>SVGTextPositioningElement</item>+      <item>SVGTitleElement</item>+      <item>SVGTransform</item>+      <item>SVGTransformList</item>+      <item>SVGTransformable</item>+      <item>SVGUseElement</item>+      <item>SVGVKernElement</item>+      <item>SVGViewElement</item>+      <item>ServiceWorker</item>+      <item>ServiceWorkerContainer</item>+      <item>ServiceWorkerGlobalScope</item>+      <item>ServiceWorkerRegistration</item>+      <item>ServiceWorkerState</item>+      <item>ShadowRoot</item>+      <item>SharedWorker</item>+      <item>SharedWorkerGlobalScope</item>+      <item>SourceBufferList</item>+      <item>StereoPannerNode</item>+      <item>Storage</item>+      <item>StorageEvent</item>+      <item>StyleSheet</item>+      <item>StyleSheetList</item>+      <item>SubtleCrypto</item>+      <item>SyncEvent</item>+      <item>Text</item>+      <item>TextMetrics</item>+      <item>TimeEvent</item>+      <item>TimeRanges</item>+      <item>Touch</item>+      <item>TouchEvent</item>+      <item>TouchList</item>+      <item>Transferable</item>+      <item>TreeWalker</item>+      <item>UIEvent</item>+      <item>USVString</item>+      <item>VRDisplayCapabilities</item>+      <item>ValidityState</item>+      <item>WaveShaperNode</item>+      <item>WebGL</item>+      <item>WebGLActiveInfo</item>+      <item>WebGLBuffer</item>+      <item>WebGLContextEvent</item>+      <item>WebGLFramebuffer</item>+      <item>WebGLProgram</item>+      <item>WebGLRenderbuffer</item>+      <item>WebGLRenderingContext</item>+      <item>WebGLShader</item>+      <item>WebGLShaderPrecisionFormat</item>+      <item>WebGLTexture</item>+      <item>WebGLTimerQueryEXT</item>+      <item>WebGLTransformFeedback</item>+      <item>WebGLUniformLocation</item>+      <item>WebGLVertexArrayObject</item>+      <item>WebGLVertexArrayObjectOES</item>+      <item>WebSocket</item>+      <item>WebSockets</item>+      <item>WebVTT</item>+      <item>WheelEvent</item>+      <item>Window</item>+      <item>WindowBase64</item>+      <item>WindowEventHandlers</item>+      <item>WindowTimers</item>+      <item>Worker</item>+      <item>WorkerGlobalScope</item>+      <item>WorkerLocation</item>+      <item>WorkerNavigator</item>+      <item>XMLHttpRequest</item>+      <item>XMLHttpRequestEventTarget</item>+      <item>XMLSerializer</item>+      <item>XPathExpression</item>+      <item>XPathResult</item>+      <item>XSLTProcessor</item>+    </list>+    <!-- Node.js Classes -->+    <list name="class_node">+      <item>Buffer</item>+      <item>EventEmitter</item>+      <item>Server</item>+      <item>Pipe</item>+      <item>Socket</item>+      <item>REPLServer</item>+      <item>ReadStream</item>+      <item>WriteStream</item>+      <item>Stream</item>+      <item>Inflate</item>+      <item>Deflate</item>+      <item>InflateRaw</item>+      <item>DeflateRaw</item>+      <item>GZip</item>+      <item>GUnzip</item>+      <item>Unzip</item>+      <item>Zip</item>+    </list>++    <!-- General Properties of Classes -->+    <list name="variable_property">+      <item>constructor</item>+      <item>length</item>+      <item>prototype</item>+      <item>__proto__</item>+    </list>+    <!-- General Built-in Functions -->+    <list name="functions">+      <item>clearInterval</item>+      <item>clearTimeout</item>+      <item>decodeURI</item>+      <item>decodeURIComponent</item>+      <item>encodeURI</item>+      <item>encodeURIComponent</item>+      <item>escape</item>+      <item>eval</item>+      <item>isFinite</item>+      <item>isNaN</item>+      <item>parseFloat</item>+      <item>parseInt</item>+      <item>require</item>+      <item>setTimeout</item>+      <item>setInterval</item>+      <item>super</item>+      <item>unescape</item>+      <item>uneval</item>+    </list>++    <!-- Functions of "console" -->+    <list name="console_functions">+      <item>assert</item>+      <item>clear</item>+      <item>count</item>+      <item>debug</item>+      <item>dir</item>+      <item>error</item>+      <item>group</item>+      <item>groupCollapsed</item>+      <item>groupEnd</item>+      <item>info</item>+      <item>log</item>+      <item>profile</item>+      <item>profileEnd</item>+      <item>table</item>+      <item>time</item>+      <item>timeEnd</item>+      <item>timeStamp</item>+      <item>trace</item>+      <item>warn</item>+    </list>+    <!-- Properties of "process" -->+    <list name="process_property">+      <item>arch</item>+      <item>argv</item>+      <item>config</item>+      <item>connected</item>+      <item>env</item>+      <item>execArgv</item>+      <item>execPath</item>+      <item>exitCode</item>+      <item>mainModule</item>+      <item>pid</item>+      <item>platform</item>+      <item>release</item>+      <item>stderr</item>+      <item>stdin</item>+      <item>stdout</item>+      <item>title</item>+      <item>version</item>+      <item>versions</item>+    </list>+    <!-- Functions of "process" -->+    <list name="process_functions">+      <item>abort</item>+      <item>chdir</item>+      <item>cwd</item>+      <item>disconnect</item>+      <item>exit</item>+      <item>setegid</item>+      <item>seteuid</item>+      <item>getegid</item>+      <item>geteuid</item>+      <item>setgid</item>+      <item>setuid</item>+      <item>getgid</item>+      <item>getuid</item>+      <item>send</item>+      <item>setgroups</item>+      <item>getgroups</item>+      <item>initgroups</item>+      <item>kill</item>+      <item>memoryUsage</item>+      <item>nextTick</item>+      <item>umask</item>+      <item>uptime</item>+      <item>hrtime</item>+    </list>++    <!-- Constants of Number Class -->+    <list name="number_constant">+      <item>EPSILON</item>+      <item>MAX_SAFE_INTEGER</item>+      <item>MAX_VALUE</item>+      <item>MIN_SAFE_INTEGER</item>+      <item>MIN_VALUE</item>+      <item>NEGATIVE_INFINITY</item>+      <item>POSITIVE_INFINITY</item>+    </list>+    <!-- Constants of Math Class-->+    <list name="math_constant">+      <item>E</item>+      <item>LN10</item>+      <item>LN2</item>+      <item>LOG10E</item>+      <item>LOG2E</item>+      <item>PI</item>+      <item>SQRT1_2</item>+      <item>SQRT2</item>+    </list>+    <!-- Methods of Math Class -->+    <list name="math_functions">+      <item>abs</item>+      <item>acos</item>+      <item>acosh</item>+      <item>asin</item>+      <item>asinh</item>+      <item>atan</item>+      <item>atan2</item>+      <item>atanh</item>+      <item>cbrt</item>+      <item>ceil</item>+      <item>clz32</item>+      <item>cos</item>+      <item>cosh</item>+      <item>exp</item>+      <item>expm1</item>+      <item>floor</item>+      <item>fround</item>+      <item>hypot</item>+      <item>imul</item>+      <item>log</item>+      <item>log10</item>+      <item>log1p</item>+      <item>log2</item>+      <item>max</item>+      <item>min</item>+      <item>pow</item>+      <item>random</item>+      <item>round</item>+      <item>sign</item>+      <item>sin</item>+      <item>sinh</item>+      <item>sqrt</item>+      <item>tan</item>+      <item>tanh</item>+      <item>trunc</item>+    </list>+    <!-- Methods of JSON Class -->+    <list name="json_functions">+      <item>parse</item>+      <item>stringify</item>+    </list>+    <!-- Methods of Promise Class -->+    <list name="promise_functions">+      <item>all</item>+      <item>catch</item>+      <item>finally</item>+      <item>race</item>+      <item>reject</item>+      <item>resolve</item>+      <item>then</item>+    </list>++    <!-- Node.js Variables -->+    <list name="node_variable">+      <item>global</item>+      <item>GLOBAL</item>+      <item>root</item>+      <item>__dirname</item>+      <item>__filename</item>+    </list>+    <!-- DOM Variables -->+    <list name="dom_variable">+      <item>document</item>+      <item>event</item>+      <item>navigator</item>+      <item>performance</item>+      <item>screen</item>+      <item>window</item>+    </list>+    <!-- DOM Constants -->+    <list name="dom_constant">+      <item>ATTRIBUTE_NODE</item>+      <item>CDATA_SECTION_NODE</item>+      <item>COMMENT_NODE</item>+      <item>DOCUMENT_FRAGMENT_NODE</item>+      <item>DOCUMENT_NODE</item>+      <item>DOCUMENT_TYPE_NODE</item>+      <item>DOMSTRING_SIZE_ERR</item>+      <item>ELEMENT_NODE</item>+      <item>ENTITY_NODE</item>+      <item>ENTITY_REFERENCE_NODE</item>+      <item>HIERARCHY_REQUEST_ERR</item>+      <item>INDEX_SIZE_ERR</item>+      <item>INUSE_ATTRIBUTE_ERR</item>+      <item>INVALID_CHARACTER_ERR</item>+      <item>NO_DATA_ALLOWED_ERR</item>+      <item>NO_MODIFICATION_ALLOWED_ERR</item>+      <item>NOT_FOUND_ERR</item>+      <item>NOT_SUPPORTED_ERR</item>+      <item>NOTATION_NODE</item>+      <item>PROCESSING_INSTRUCTION_NODE</item>+      <item>TEXT_NODE</item>+      <item>WRONG_DOCUMENT_ERR</item>+    </list>++    <!-- For Autocomplete Keywords -->+    <!-- Properties of DOM Classes -->+    <list name="dom_property">+      <item>_content</item>+      <item>x</item>+      <item>y</item>+      <item>z</item>+      <item>abbr</item>+      <item>above</item>+      <item>accept</item>+      <item>acceptCharset</item>+      <item>accessKey</item>+      <item>action</item>+      <item>align</item>+      <item>aLink</item>+      <item>vLink</item>+      <item>aLinkcolor</item>+      <item>vLinkcolor</item>+      <item>all</item>+      <item>alt</item>+      <item>anchors</item>+      <item>appCodeName</item>+      <item>appCore</item>+      <item>applets</item>+      <item>appMinorVersion</item>+      <item>appName</item>+      <item>appVersion</item>+      <item>archive</item>+      <item>areas</item>+      <item>arguments</item>+      <item>attributes</item>+      <item>availHeight</item>+      <item>availLeft</item>+      <item>availTop</item>+      <item>availWidth</item>+      <item>axis</item>+      <item>background</item>+      <item>backgroundColor</item>+      <item>backgroundImage</item>+      <item>below</item>+      <item>bgColor</item>+      <item>body</item>+      <item>border</item>+      <item>borderBottomWidth</item>+      <item>borderColor</item>+      <item>borderLeftWidth</item>+      <item>borderRightWidth</item>+      <item>borderStyle</item>+      <item>borderTopWidth</item>+      <item>borderWidth</item>+      <item>bottom</item>+      <item>bufferDepth</item>+      <item>callee</item>+      <item>caller</item>+      <item>caption</item>+      <item>cellPadding</item>+      <item>cells</item>+      <item>cellSpacing</item>+      <item>ch</item>+      <item>characterSet</item>+      <item>charset</item>+      <item>checked</item>+      <item>childNodes</item>+      <item>chOff</item>+      <item>cite</item>+      <item>classes</item>+      <item>className</item>+      <item>clear</item>+      <item>clientInformation</item>+      <item>clip</item>+      <item>clipBoardData</item>+      <item>closed</item>+      <item>code</item>+      <item>codeBase</item>+      <item>codeType</item>+      <item>color</item>+      <item>colorDepth</item>+      <item>cols</item>+      <item>colSpan</item>+      <item>compact</item>+      <item>complete</item>+      <item>components</item>+      <item>content</item>+      <item>controllers</item>+      <item>cookie</item>+      <item>cookieEnabled</item>+      <item>cords</item>+      <item>cpuClass</item>+      <item>crypto</item>+      <item>current</item>+      <item>data</item>+      <item>dateTime</item>+      <item>declare</item>+      <item>defaultCharset</item>+      <item>defaultChecked</item>+      <item>defaultSelected</item>+      <item>defaultStatus</item>+      <item>defaultValue</item>+      <item>defaultView</item>+      <item>defer</item>+      <item>description</item>+      <item>dialogArguments</item>+      <item>dialogHeight</item>+      <item>dialogLeft</item>+      <item>dialogTop</item>+      <item>dialogWidth</item>+      <item>dir</item>+      <item>directories</item>+      <item>disabled</item>+      <item>display</item>+      <item>docmain</item>+      <item>doctype</item>+      <item>documentElement</item>+      <item>elements</item>+      <item>embeds</item>+      <item>enabledPlugin</item>+      <item>encoding</item>+      <item>enctype</item>+      <item>entities</item>+      <item>event</item>+      <item>expando</item>+      <item>external</item>+      <item>face</item>+      <item>fgColor</item>+      <item>filename</item>+      <item>firstChild</item>+      <item>fontFamily</item>+      <item>fontSize</item>+      <item>fontWeight</item>+      <item>form</item>+      <item>formName</item>+      <item>forms</item>+      <item>frame</item>+      <item>frameBorder</item>+      <item>frameElement</item>+      <item>frames</item>+      <item>hasFocus</item>+      <item>hash</item>+      <item>headers</item>+      <item>height</item>+      <item>history</item>+      <item>host</item>+      <item>hostname</item>+      <item>href</item>+      <item>hreflang</item>+      <item>hspace</item>+      <item>htmlFor</item>+      <item>httpEquiv</item>+      <item>id</item>+      <item>ids</item>+      <item>ignoreCase</item>+      <item>images</item>+      <item>implementation</item>+      <item>index</item>+      <item>innerHeight</item>+      <item>innerWidth</item>+      <item>input</item>+      <item>isMap</item>+      <item>label</item>+      <item>lang</item>+      <item>language</item>+      <item>lastChild</item>+      <item>lastIndex</item>+      <item>lastMatch</item>+      <item>lastModified</item>+      <item>lastParen</item>+      <item>layers</item>+      <item>layerX</item>+      <item>layerY</item>+      <item>left</item>+      <item>leftContext</item>+      <item>lineHeight</item>+      <item>link</item>+      <item>linkColor</item>+      <item>links</item>+      <item>listStyleType</item>+      <item>localName</item>+      <item>location</item>+      <item>locationbar</item>+      <item>longDesc</item>+      <item>lowsrc</item>+      <item>lowSrc</item>+      <item>marginBottom</item>+      <item>marginHeight</item>+      <item>marginLeft</item>+      <item>marginRight</item>+      <item>marginTop</item>+      <item>marginWidth</item>+      <item>maxLength</item>+      <item>media</item>+      <item>menubar</item>+      <item>method</item>+      <item>mimeTypes</item>+      <item>multiline</item>+      <item>multiple</item>+      <item>name</item>+      <item>nameProp</item>+      <item>namespaces</item>+      <item>namespaceURI</item>+      <item>next</item>+      <item>nextSibling</item>+      <item>nodeName</item>+      <item>nodeType</item>+      <item>nodeValue</item>+      <item>noHref</item>+      <item>noResize</item>+      <item>noShade</item>+      <item>notationName</item>+      <item>notations</item>+      <item>noWrap</item>+      <item>object</item>+      <item>offscreenBuffering</item>+      <item>onLine</item>+      <item>onreadystatechange</item>+      <item>opener</item>+      <item>opsProfile</item>+      <item>options</item>+      <item>oscpu</item>+      <item>outerHeight</item>+      <item>outerWidth</item>+      <item>ownerDocument</item>+      <item>paddingBottom</item>+      <item>paddingLeft</item>+      <item>paddingRight</item>+      <item>paddingTop</item>+      <item>pageX</item>+      <item>pageY</item>+      <item>pageXOffset</item>+      <item>pageYOffset</item>+      <item>parent</item>+      <item>parentLayer</item>+      <item>parentNode</item>+      <item>parentWindow</item>+      <item>pathname</item>+      <item>personalbar</item>+      <item>pixelDepth</item>+      <item>pkcs11</item>+      <item>platform</item>+      <item>plugins</item>+      <item>port</item>+      <item>prefix</item>+      <item>previous</item>+      <item>previousDibling</item>+      <item>product</item>+      <item>productSub</item>+      <item>profile</item>+      <item>profileend</item>+      <item>prompt</item>+      <item>prompter</item>+      <item>protocol</item>+      <item>publicId</item>+      <item>readOnly</item>+      <item>readyState</item>+      <item>referrer</item>+      <item>rel</item>+      <item>responseText</item>+      <item>responseXML</item>+      <item>rev</item>+      <item>right</item>+      <item>rightContext</item>+      <item>rowIndex</item>+      <item>rows</item>+      <item>rowSpan</item>+      <item>rules</item>+      <item>scheme</item>+      <item>scope</item>+      <item>screenX</item>+      <item>screenY</item>+      <item>screenLeft</item>+      <item>screenTop</item>+      <item>scripts</item>+      <item>scrollbars</item>+      <item>scrolling</item>+      <item>sectionRowIndex</item>+      <item>security</item>+      <item>securityPolicy</item>+      <item>selected</item>+      <item>selectedIndex</item>+      <item>selection</item>+      <item>self</item>+      <item>shape</item>+      <item>siblingAbove</item>+      <item>siblingBelow</item>+      <item>size</item>+      <item>source</item>+      <item>specified</item>+      <item>standby</item>+      <item>start</item>+      <item>status</item>+      <item>statusbar</item>+      <item>statusText</item>+      <item>style</item>+      <item>styleSheets</item>+      <item>suffixes</item>+      <item>summary</item>+      <item>systemId</item>+      <item>systemLanguage</item>+      <item>tagName</item>+      <item>tags</item>+      <item>target</item>+      <item>tBodies</item>+      <item>text</item>+      <item>textAlign</item>+      <item>textDecoration</item>+      <item>textIndent</item>+      <item>textTransform</item>+      <item>tFoot</item>+      <item>tHead</item>+      <item>title</item>+      <item>toolbar</item>+      <item>top</item>+      <item>type</item>+      <item>undefined</item>+      <item>uniqueID</item>+      <item>updateInterval</item>+      <item>URL</item>+      <item>URLUnencoded</item>+      <item>useMap</item>+      <item>userAgent</item>+      <item>userLanguage</item>+      <item>userProfile</item>+      <item>vAlign</item>+      <item>value</item>+      <item>valueType</item>+      <item>vendor</item>+      <item>vendorSub</item>+      <item>version</item>+      <item>visibility</item>+      <item>vspace</item>+      <item>whiteSpace</item>+      <item>width</item>+      <item>XMLDocument</item>+      <item>XSLDocument</item>+      <item>zIndex</item>+    </list>+    <!-- Methods of DOM Classes -->+    <list name="dom_functions">+      <item>acceptNode</item>+      <item>add</item>+      <item>addEventListener</item>+      <item>addTextTrack</item>+      <item>adoptNode</item>+      <item>after</item>+      <item>animate</item>+      <item>append</item>+      <item>appendChild</item>+      <item>appendData</item>+      <item>before</item>+      <item>blur</item>+      <item>canPlayType</item>+      <item>captureStream</item>+      <item>caretPositionFromPoint</item>+      <item>caretRangeFromPoint</item>+      <item>checkValidity</item>+      <item>clear</item>+      <item>click</item>+      <item>cloneContents</item>+      <item>cloneNode</item>+      <item>cloneRange</item>+      <item>close</item>+      <item>closest</item>+      <item>collapse</item>+      <item>compareBoundaryPoints</item>+      <item>compareDocumentPosition</item>+      <item>comparePoint</item>+      <item>contains</item>+      <item>convertPointFromNode</item>+      <item>convertQuadFromNode</item>+      <item>convertRectFromNode</item>+      <item>createAttribute</item>+      <item>createAttributeNS</item>+      <item>createCaption</item>+      <item>createCDATASection</item>+      <item>createComment</item>+      <item>createContextualFragment</item>+      <item>createDocument</item>+      <item>createDocumentFragment</item>+      <item>createDocumentType</item>+      <item>createElement</item>+      <item>createElementNS</item>+      <item>createEntityReference</item>+      <item>createEvent</item>+      <item>createExpression</item>+      <item>createHTMLDocument</item>+      <item>createNodeIterator</item>+      <item>createNSResolver</item>+      <item>createProcessingInstruction</item>+      <item>createRange</item>+      <item>createShadowRoot</item>+      <item>createTBody</item>+      <item>createTextNode</item>+      <item>createTFoot</item>+      <item>createTHead</item>+      <item>createTreeWalker</item>+      <item>delete</item>+      <item>deleteCaption</item>+      <item>deleteCell</item>+      <item>deleteContents</item>+      <item>deleteData</item>+      <item>deleteRow</item>+      <item>deleteTFoot</item>+      <item>deleteTHead</item>+      <item>detach</item>+      <item>disconnect</item>+      <item>dispatchEvent</item>+      <item>elementFromPoint</item>+      <item>elementsFromPoint</item>+      <item>enableStyleSheetsForSet</item>+      <item>entries</item>+      <item>evaluate</item>+      <item>execCommand</item>+      <item>exitFullscreen</item>+      <item>exitPointerLock</item>+      <item>expand</item>+      <item>extractContents</item>+      <item>fastSeek</item>+      <item>firstChild</item>+      <item>focus</item>+      <item>forEach</item>+      <item>get</item>+      <item>getAll</item>+      <item>getAnimations</item>+      <item>getAttribute</item>+      <item>getAttributeNames</item>+      <item>getAttributeNode</item>+      <item>getAttributeNodeNS</item>+      <item>getAttributeNS</item>+      <item>getBoundingClientRect</item>+      <item>getBoxQuads</item>+      <item>getClientRects</item>+      <item>getContext</item>+      <item>getDestinationInsertionPoints</item>+      <item>getElementById</item>+      <item>getElementsByClassName</item>+      <item>getElementsByName</item>+      <item>getElementsByTagName</item>+      <item>getElementsByTagNameNS</item>+      <item>getItem</item>+      <item>getNamedItem</item>+      <item>getSelection</item>+      <item>getStartDate</item>+      <item>getVideoPlaybackQuality</item>+      <item>has</item>+      <item>hasAttribute</item>+      <item>hasAttributeNS</item>+      <item>hasAttributes</item>+      <item>hasChildNodes</item>+      <item>hasFeature</item>+      <item>hasFocus</item>+      <item>importNode</item>+      <item>initEvent</item>+      <item>insertAdjacentElement</item>+      <item>insertAdjacentHTML</item>+      <item>insertAdjacentText</item>+      <item>insertBefore</item>+      <item>insertCell</item>+      <item>insertData</item>+      <item>insertNode</item>+      <item>insertRow</item>+      <item>intersectsNode</item>+      <item>isDefaultNamespace</item>+      <item>isEqualNode</item>+      <item>isPointInRange</item>+      <item>isSameNode</item>+      <item>item</item>+      <item>key</item>+      <item>keys</item>+      <item>lastChild</item>+      <item>load</item>+      <item>lookupNamespaceURI</item>+      <item>lookupPrefix</item>+      <item>matches</item>+      <item>move</item>+      <item>moveAttribute</item>+      <item>moveAttributeNode</item>+      <item>moveChild</item>+      <item>moveNamedItem</item>+      <item>namedItem</item>+      <item>nextNode</item>+      <item>nextSibling</item>+      <item>normalize</item>+      <item>observe</item>+      <item>open</item>+      <item>parentNode</item>+      <item>pause</item>+      <item>play</item>+      <item>postMessage</item>+      <item>prepend</item>+      <item>preventDefault</item>+      <item>previousNode</item>+      <item>previousSibling</item>+      <item>probablySupportsContext</item>+      <item>queryCommandEnabled</item>+      <item>queryCommandIndeterm</item>+      <item>queryCommandState</item>+      <item>queryCommandSupported</item>+      <item>queryCommandValue</item>+      <item>querySelector</item>+      <item>querySelectorAll</item>+      <item>registerContentHandler</item>+      <item>registerElement</item>+      <item>registerProtocolHandler</item>+      <item>releaseCapture</item>+      <item>releaseEvents</item>+      <item>remove</item>+      <item>removeAttribute</item>+      <item>removeAttributeNode</item>+      <item>removeAttributeNS</item>+      <item>removeChild</item>+      <item>removeEventListener</item>+      <item>removeItem</item>+      <item>replace</item>+      <item>replaceChild</item>+      <item>replaceData</item>+      <item>replaceWith</item>+      <item>reportValidity</item>+      <item>requestFullscreen</item>+      <item>requestPointerLock</item>+      <item>reset</item>+      <item>scroll</item>+      <item>scrollBy</item>+      <item>scrollIntoView</item>+      <item>scrollTo</item>+      <item>seekToNextFrame</item>+      <item>select</item>+      <item>selectNode</item>+      <item>selectNodeContents</item>+      <item>set</item>+      <item>setAttribute</item>+      <item>setAttributeNode</item>+      <item>setAttributeNodeNS</item>+      <item>setAttributeNS</item>+      <item>setCapture</item>+      <item>setCustomValidity</item>+      <item>setEnd</item>+      <item>setEndAfter</item>+      <item>setEndBefore</item>+      <item>setItem</item>+      <item>setNamedItem</item>+      <item>setRangeText</item>+      <item>setSelectionRange</item>+      <item>setSinkId</item>+      <item>setStart</item>+      <item>setStartAfter</item>+      <item>setStartBefore</item>+      <item>slice</item>+      <item>splitText</item>+      <item>stepDown</item>+      <item>stepUp</item>+      <item>stopImmediatePropagation</item>+      <item>stopPropagation</item>+      <item>submit</item>+      <item>substringData</item>+      <item>supports</item>+      <item>surroundContents</item>+      <item>takeRecords</item>+      <item>terminate</item>+      <item>toBlob</item>+      <item>toDataURL</item>+      <item>toggle</item>+      <!--<item>toString</item>--> <!-- Duplicated: function_common -->+      <item>values</item>+      <item>write</item>+      <item>writeln</item>+    </list>+    <!-- Event Handler -->+    <list name="eventhandler_property">+      <item>onRowsinserted</item>+      <item>onRowsdelete</item>+      <item>onRowenter</item>+      <item>onRowexit</item>+      <item>onResize</item>+      <item>onResizestart</item>+      <item>onResizeend</item>+      <item>onReset</item>+      <item>onReadystatechange</item>+      <item>onMouseout</item>+      <item>onMouseover</item>+      <item>onMousedown</item>+      <item>onMouseup</item>+      <item>onMousemove</item>+      <item>onBeforecut</item>+      <item>onBeforedeactivate</item>+      <item>onBeforeunload</item>+      <item>onBeforeupdate</item>+      <item>onBeforepaste</item>+      <item>onBeforeprint</item>+      <item>onBeforeeditfocus</item>+      <item>onBeforeactivate</item>+      <item>onBlur</item>+      <item>onScrolltop</item>+      <item>onSubmit</item>+      <item>onSelect</item>+      <item>onSelectstart</item>+      <item>onSelectionchange</item>+      <item>onHover</item>+      <item>onHelp</item>+      <item>onChange</item>+      <item>onContextmenu</item>+      <item>onControlselect</item>+      <item>onCut</item>+      <item>onCellchange</item>+      <item>onClock</item>+      <item>onClose</item>+      <item>onDeactivate</item>+      <item>onDatasetchanged</item>+      <item>onDatasetcomplete</item>+      <item>onDataavailable</item>+      <item>onDrop</item>+      <item>onDrag</item>+      <item>onDragstart</item>+      <item>onDragover</item>+      <item>onDragdrop</item>+      <item>onDragenter</item>+      <item>onDragend</item>+      <item>onDragleave</item>+      <item>onDblclick</item>+      <item>onUnload</item>+      <item>onPaste</item>+      <item>onPropertychange</item>+      <item>onError</item>+      <item>onErrorupdate</item>+      <item>onKeydown</item>+      <item>onKeyup</item>+      <item>onKeypress</item>+      <item>onFocus</item>+      <item>onLoad</item>+      <item>onActivate</item>+      <item>onAfterupdate</item>+      <item>onAfterprint</item>+      <item>onAbort</item>+    </list>+    <!-- Others Methods of Classes -->+    <list name="function_common">+      <item>shift</item>+      <item>showModelessDialog</item>+      <item>showModalDialog</item>+      <item>showHelp</item>+      <item>scroll</item>+      <item>scrollX</item>+      <item>scrollByPages</item>+      <item>scrollByLines</item>+      <item>scrollY</item>+      <item>scrollTo</item>+      <item>stop</item>+      <item>strike</item>+      <item>sizeToContent</item>+      <item>sidebar</item>+      <item>signText</item>+      <item>sort</item>+      <item>sup</item>+      <item>sub</item>+      <item>substr</item>+      <item>substring</item>+      <item>splice</item>+      <item>split</item>+      <item>send</item>+      <item>setMilliseconds</item>+      <item>setSeconds</item>+      <item>setMinutes</item>+      <item>setHours</item>+      <item>setMonth</item>+      <item>setYear</item>+      <item>setFullYear</item>+      <item>setDate</item>+      <item>setUTCMilliseconds</item>+      <item>setUTCSeconds</item>+      <item>setUTCMinutes</item>+      <item>setUTCHours</item>+      <item>setUTCMonth</item>+      <item>setUTCFullYear</item>+      <item>setUTCDate</item>+      <item>setTime</item>+      <item>setHotkeys</item>+      <item>setCursor</item>+      <item>setZOptions</item>+      <item>setActive</item>+      <item>setResizable</item>+      <item>setRequestHeader</item>+      <item>search</item>+      <item>slice</item>+      <item>savePreferences</item>+      <item>small</item>+      <item>home</item>+      <item>handleEvent</item>+      <item>navigate</item>+      <item>char</item>+      <item>charCodeAt</item>+      <item>charAt</item>+      <item>concat</item>+      <item>contextual</item>+      <item>confirm</item>+      <item>compile</item>+      <item>clear</item>+      <item>captureEvents</item>+      <item>call</item>+      <item>createStyleSheet</item>+      <item>createPopup</item>+      <item>createEventObject</item>+      <item>toGMTString</item>+      <item>toUTCString</item>+      <item>toString</item>+      <item>toSource</item>+      <item>toUpperCase</item>+      <item>toLowerCase</item>+      <item>toLocaleString</item>+      <item>test</item>+      <item>taint</item>+      <item>taintEnabled</item>+      <item>indexOf</item>+      <item>italics</item>+      <item>disableExternalCapture</item>+      <item>dump</item>+      <item>detachEvent</item>+      <item>unshift</item>+      <item>untaint</item>+      <item>unwatch</item>+      <item>updateCommands</item>+      <item>join</item>+      <item>javaEnabled</item>+      <item>pop</item>+      <item>push</item>+      <item>plugins.refresh</item>+      <item>paddings</item>+      <item>parse</item>+      <item>print</item>+      <item>prompt</item>+      <item>preference</item>+      <item>enableExternalCapture</item>+      <item>exec</item>+      <item>execScript</item>+      <item>valueOf</item>+      <item>UTC</item>+      <item>find</item>+      <item>file</item>+      <item>fileModifiedDate</item>+      <item>fileSize</item>+      <item>fileCreatedDate</item>+      <item>fileUpdatedDate</item>+      <item>fixed</item>+      <item>fontsize</item>+      <item>fontcolor</item>+      <item>forward</item>+      <item>fromCharCode</item>+      <item>watch</item>+      <item>link</item>+      <item>load</item>+      <item>lastIndexOf</item>+      <item>anchor</item>+      <item>attachEvent</item>+      <item>atob</item>+      <item>apply</item>+      <item>alert</item>+      <item>abort</item>+      <item>routeEvents</item>+      <item>resize</item>+      <item>resizeBy</item>+      <item>resizeTo</item>+      <item>recalc</item>+      <item>returnValue</item>+      <item>replace</item>+      <item>reverse</item>+      <item>reload</item>+      <item>releaseCapture</item>+      <item>releaseEvents</item>+      <item>go</item>+      <item>getMilliseconds</item>+      <item>getSeconds</item>+      <item>getMinutes</item>+      <item>getHours</item>+      <item>getMonth</item>+      <item>getDay</item>+      <item>getYear</item>+      <item>getFullYear</item>+      <item>getTime</item>+      <item>getDate</item>+      <item>getTimezoneOffset</item>+      <item>getUTCMilliseconds</item>+      <item>getUTCSeconds</item>+      <item>getUTCMinutes</item>+      <item>getUTCHours</item>+      <item>getUTCDay</item>+      <item>getUTCMonth</item>+      <item>getUTCFullYear</item>+      <item>getUTCDate</item>+      <item>getAttention</item>+      <item>getSelection</item>+      <item>getResponseHeader</item>+      <item>getAllResponseHeaders</item>+      <item>moveBy</item>+      <item>moveBelow</item>+      <item>moveTo</item>+      <item>moveToAbsolute</item>+      <item>moveAbove</item>+      <item>mergeAttributes</item>+      <item>match</item>+      <item>margins</item>+      <item>btoa</item>+      <item>big</item>+      <item>bold</item>+      <item>borderWidths</item>+      <item>blink</item>+      <item>back</item>+    </list>++    <contexts>++      <!-- Shebang: ("#!") Detect shebang and fallthrough to Normal -->+      <!-- Based on the similar clause from prolog.xml.+           This uses "lineEmptyContext" & "lineEndContext" to force the highlight only on the first line. -->+      <context name="Shebang" attribute="Normal Text" lineEndContext="Normal" lineEmptyContext="Normal" fallthrough="true" fallthroughContext="Normal">+        <Detect2Chars column="0" char="#" char1="!" context="Shebang Line" attribute="Comment" />+      </context>+      <context name="Shebang Line" attribute="Comment" lineEndContext="#pop!Normal" />++      <!-- Normal Syntax of JavaScript. -->+      <!-- NOTE: These IncludeRules rules, except BuiltInClasses and FindBrackets are included in qml.xml -->+      <context attribute="Normal Text" lineEndContext="#stay" name="Normal">+        <DetectSpaces/>+        <IncludeRules context="FindNumbers" />+        <IncludeRules context="FindKeywords" />+        <IncludeRules context="FindStrings" />+        <IncludeRules context="BuiltInClasses" />+        <IncludeRules context="FindObjectMembersAndFunctions" />+        <IncludeRules context="FindBrackets" />+        <IncludeRules context="JSBase" />+      </context>++      <!-- Base Syntax. Used by the TypeScript highlighter. -->+      <context attribute="Normal Text" lineEndContext="#stay" name="JSBase">+        <AnyChar context="NoRegExp" String="])" />+        <!--DetectIdentifier-->+        <!-- Do not start RegExp after non-ASCII characters (see bug #393633) -->+        <RegExpr context="NoRegExp" String="&identifier;" />++        <IncludeRules context="FindComments" />++        <!-- E4X extension (=xml inside JavaScript), see bug #373713 -->+        <RegExpr attribute="Symbol" context="#stay" String="&lt;(?=/\*|//)" />+        <Detect2Chars attribute="Symbol" context="NoRegExp" char="&lt;" char1="/" />+        <Detect2Chars attribute="Symbol" context="NoRegExp" char="/" char1="&gt;" />++        <DetectChar attribute="Regular Expression" context="(regex caret first check)" char="/" />++        <!-- NOTE: The brackets {}()[] are highlighted as Normal Text. -->+        <Detect2Chars attribute="Special Operators" context="#stay" char="=" char1="&gt;" />+        <AnyChar attribute="Symbol" String=":!%&amp;+,-/.*&lt;=&gt;?|~^&#59;" />+      </context>+++      <!-- Content Contexts -->++      <!-- Avoid highlighting regular expressions. -->+      <context attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop" name="NoRegExp">+        <Detect2Chars context="#pop" char="/" char1="/" lookAhead="true" />+        <Detect2Chars context="#pop" char="/" char1="*" lookAhead="true" />+        <DetectChar attribute="Symbol" context="#pop" char="/" />+        <DetectSpaces/>+      </context>++      <!-- USE ONLY ANFTER STRINGS: Highlight only valid regular expressions of a single line. -->+      <context attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop#pop" name="RegExpAfterString">+        <DetectSpaces/>+        <Detect2Chars context="#pop#pop" char="/" char1="/" lookAhead="true" />+        <Detect2Chars context="#pop#pop" char="/" char1="*" lookAhead="true" />+        <!-- Detect valid Regular expression in single line -->+        <RegExpr attribute="Regular Expression" context="#pop#pop!(regex caret first check)" String="/(?=(?:[^/\\\[]|\\.|\[(?:[^\]\\]|\\.)+\])+/(?:[gimsuy]+(?!\s*[\w$])|(?![/\*])|(?=/\*)))" />+        <DetectChar attribute="Symbol" context="#pop#pop" char="/" />+      </context>++      <!-- Object, within { ... } -->+      <context attribute="Normal Text" lineEndContext="#stay" name="FindBrackets">+        <DetectChar attribute="Normal Text" context="Object" char="{" beginRegion="Brace" />+        <DetectChar attribute="Normal Text" context="#stay" char="[" beginRegion="List" />+        <DetectChar attribute="Normal Text" context="NoRegExp" char="]" endRegion="List" />+      </context>++      <context attribute="Normal Text" lineEndContext="#stay" name="Object">+        <DetectChar attribute="Normal Text" context="#pop" char="}" endRegion="Brace" />+        <!-- Mostly required for define: in switch blocks -->+        <keyword attribute="Keyword" String="keywords" />+        <RegExpr attribute="ControlFlow" String="\bdefault(?=\s*:)" />++        <RegExpr attribute="JSON" String="&identifier;(?=\s*:)" />+        <!-- a ? b : c -->+        <RegExpr attribute="Symbol" context="ConditionalExpression" String="\?(?=[^\{\}]*&identifier;\s*\:)" />++        <IncludeRules context="Normal" />+      </context>+      <!-- Highlight keywords before ":" in conditional expressions. -->+      <context attribute="Normal Text" lineEndContext="#pop" name="ConditionalExpression">+        <DetectChar attribute="Symbol" context="#pop" char=":" />+        <DetectChar attribute="Symbol" context="#stay" char="?" />+        <AnyChar context="#pop" String="{}" lookAhead="true" />+        <IncludeRules context="FindKeywords" />+        <IncludeRules context="Normal" />+      </context>++      <!-- Keywords -->+      <context attribute="Normal Text" lineEndContext="#stay" name="FindKeywords">+        <WordDetect attribute="Keyword" context="FunctionDeclaration" String="function" />+        <keyword attribute="ControlFlow" String="controlflow" />+        <keyword attribute="Keyword" String="keywords" />+        <keyword attribute="Reserved" String="reserved" />+        <keyword attribute="Keyword" context="NoRegExp" String="primitives" />+        <keyword attribute="Module" String="module" />+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="FunctionDeclaration" fallthrough="true" fallthroughContext="#pop">+        <DetectSpaces />+        <RegExpr attribute="Function Declaration" context="#pop" String="&identifier;(?=\s*\()" /> <!-- NoRegExp -->+        <IncludeRules context="FindComments" />+      </context>++      <!-- Numbers -->+      <context attribute="Normal Text" lineEndContext="#stay" name="FindNumbers">+        <Float attribute="Float" context="NoRegExp" />+        <!-- Invalid Binary, Octal or Hex. IMPORTANT: Allow Bigint. -->+        <RegExpr attribute="Error" context="NoRegExp" String="\b0(?:b[01]*[2-9]\d*|o[0-7]*[89]\d*|x[0-9a-f]*[g-mo-z][a-mo-z0-9]*)" insensitive="true" />+        <HlCHex attribute="Hex" context="NoRegExp" />+        <RegExpr attribute="Octal" context="NoRegExp" String="\b0[oO][0-7]+" />+        <RegExpr attribute="Binary" context="NoRegExp" String="\b0[bB][01]+" />+        <RegExpr attribute="Float" context="NoRegExp" String="\b\d+[eE][\+\-]?\d+" />+        <Int attribute="Decimal" context="NoRegExp" />+      </context>++      <!-- Find Objects Member and Functions -->+      <context attribute="Normal Text" lineEndContext="#stay" name="FindObjectMembersAndFunctions">+        <!-- The order of these rules is important: 1) Functions. 2) Constants. 3) Objects. -->+        <RegExpr attribute="Function Name" context="Function" String="(&identifier;)(?=\s*\()" lookAhead="true" />+        <IncludeRules context="BuiltInConstants" />+        <RegExpr attribute="Objects" context="Object Member" String="&identifier;(?=\s*\.)" />+        <DetectChar attribute="Symbol" context="Object Member" char="." />+      </context>+      <context attribute="Normal Text" lineEndContext="#pop" name="Function">+        <keyword attribute="Function (Built-in)" context="#pop" String="functions" />+        <StringDetect attribute="Function Name" context="#pop" String="%1" dynamic="true" />+        <DetectChar context="#pop" char="(" lookAhead="true" />+      </context>++      <context attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop" name="Object Member">+        <IncludeRules context="DefaultMemberObject" />+        <!-- Common functions and properties, only for autocomplete keywords -->+        <keyword attribute="Object Member" context="#pop!NoRegExp" String="dom_property" />+        <keyword attribute="Function Name" context="#pop!NoRegExp" String="dom_functions" />+        <keyword attribute="Object Member" context="#pop!NoRegExp" String="eventhandler_property" />+        <keyword attribute="Function Name" context="#pop!NoRegExp" String="function_common" />+      </context>+      <!-- Used in common and built-in objects. -->+      <context attribute="Normal Text" lineEndContext="#pop" name="DefaultMemberObject">+        <DetectChar attribute="Symbol" context="#stay" char="." />++        <!-- The order of these rules is important: 1) Functions. 2) Constants & Properties. 3) Obj. Members. -->+        <!-- Function -->+        <RegExpr attribute="Function Name" context="#pop" String="&identifier;(?=\s*\()" />+        <!-- Generic constants and properties -->+        <keyword attribute="Object Property (Built-in)" context="#pop!NoRegExp" String="variable_property" />+        <keyword attribute="Constant" context="#pop!NoRegExp" String="dom_constant" />++        <RegExpr attribute="Object Member" context="#stay" String="&identifier;(?=\s*\.)" />+        <RegExpr attribute="Object Member" context="#pop!NoRegExp" String="&identifier;" />+        <IncludeRules context="NoRegExp" />+        <DetectSpaces />++        <!-- Generic Functions -->+        <keyword context="#pop!NoRegExp" attribute="Function Name" String="functions" />+      </context>++      <!-- Strings -->+      <context attribute="Normal Text" lineEndContext="#stay" name="FindStrings">+        <DetectChar attribute="Template" context="Template" char="`" />+        <StringDetect attribute="Template" context="RawTemplate" String="String.raw`" />++        <DetectChar attribute="String" context="String" char="&quot;" />+        <DetectChar attribute="String" context="String SQ" char="'" />+      </context>++      <context attribute="String" lineEndContext="#pop" name="String">+        <IncludeRules context="Escape" />+        <DetectChar attribute="String" context="RegExpAfterString" char="&quot;" />+      </context>+      <context attribute="String" lineEndContext="#pop" name="String SQ">+        <IncludeRules context="Escape" />+        <DetectChar attribute="String" context="RegExpAfterString" char="'" />+      </context>++      <context attribute="Normal Text" lineEndContext="#stay" name="Escape">+        <LineContinue attribute="Escape" context="#stay" />+        <!-- Hexadecimal, unicode & octal -->+        <RegExpr attribute="Escape" context="#stay" String="\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|u\{[0-9a-fA-F]+\}|[0-3][0-7]{1,2}|[4-7][0-7]|[1-7])" />+        <Detect2Chars attribute="Error" context="#stay" char="\" char1="x" />+        <Detect2Chars attribute="Error" context="#stay" char="\" char1="u" />+        <DetectChar attribute="Escape" context="Character Escape" char="\" />+      </context>+      <context attribute="Escape" lineEndContext="#pop" name="Character Escape">+        <AnyChar attribute="Reserved Char. Escape" context="#pop" String="0bfnrtv" /> <!-- Reserved Char. Escape. Also: "'/ -->+        <RegExpr attribute="Escape" context="#pop" String="." /> <!-- Literal Char. Escape -->+      </context>++      <!-- Template -->+      <context attribute="Template" lineEndContext="#stay" name="Template">+        <IncludeRules context="Escape" />+        <Detect2Chars attribute="Substitution" context="Substitution" char="$" char1="{" />+        <DetectChar attribute="Template" context="RegExpAfterString" char="`" />+      </context>+      <context attribute="Template" lineEndContext="#stay" name="RawTemplate">+        <DetectChar attribute="Template" context="RegExpAfterString" char="`" />+      </context>+      <context name="Substitution" attribute="Normal Text" lineEndContext="#stay">+        <DetectChar attribute="Substitution" char="}" context="#pop"/>+        <IncludeRules context="Normal"/>+      </context>++      <!-- Comments -->+      <context name="FindComments" attribute="Normal Text" lineEndContext="#stay">+        <StringDetect attribute="Region Marker" context="region_marker" String="//BEGIN" beginRegion="Region1" />+        <StringDetect attribute="Region Marker" context="region_marker" String="//END" endRegion="Region1" />++        <IncludeRules context="##Doxygen" />+        <Detect2Chars attribute="Comment" context="Comment" char="/" char1="/" />+        <Detect2Chars attribute="Comment" context="Multi/inline Comment" char="/" char1="*" beginRegion="Comment" />+      </context>+      <context attribute="Comment" lineEndContext="#pop" name="Comment">+        <DetectSpaces />+        <IncludeRules context="##Alerts" />+        <IncludeRules context="##Modelines" />+      </context>+      <context attribute="Comment" lineEndContext="#stay" name="Multi/inline Comment">+        <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" endRegion="Comment" />+        <DetectSpaces />+        <IncludeRules context="##Alerts" />+        <IncludeRules context="##Modelines" />+      </context>+      <context name="region_marker" attribute="Region Marker" lineEndContext="#pop" />++      <!-- Regular Expressions -->+      <context attribute="Regular Expression" lineEndContext="#stay" name="Regular Expression">+        <RegExpr attribute="Regular Expression" context="#pop#pop" String="/\w*" />+        <RegExpr attribute="Pattern Internal Operator" String="\{[\d, ]+\}" />+        <RegExpr attribute="Pattern Internal Operator" String="\\[bB]" />+        <RegExpr attribute="Pattern Character Class" String="\\[nrtvfDdSsWw]" />+        <DetectChar attribute="Pattern Character Class" context="(charclass caret first check)" char="[" />+        <RegExpr attribute="Pattern Internal Operator" String="\\." />+        <RegExpr attribute="Pattern Internal Operator" String="\$(?=/)" />+        <AnyChar attribute="Pattern Internal Operator" String="?+*()|" />+      </context>+      <context attribute="Pattern Character Class" lineEndContext="#stay" name="Regular Expression Character Class">+        <RegExpr String="\\[\[\]]" />+        <RegExpr attribute="Pattern Internal Operator" String="\\." />+        <DetectChar attribute="Pattern Character Class" context="#pop#pop" char="]" />+      </context>+      <context attribute="Pattern Internal Operator" lineEndContext="#pop" name="(regex caret first check)" fallthrough="true" fallthroughContext="Regular Expression">+        <DetectChar attribute="Pattern Internal Operator" context="Regular Expression" char="^" />+      </context>+      <context attribute="Pattern Internal Operator" lineEndContext="#pop" name="(charclass caret first check)" fallthrough="true" fallthroughContext="Regular Expression Character Class">+        <DetectChar attribute="Pattern Internal Operator" context="Regular Expression Character Class" char="^" />+      </context>+++      <!-- Built-in Classes -->+      <!-- Keep in sync with typescript.xml -->++      <context name="BuiltInClasses" attribute="Normal Text" lineEndContext="#stay">+        <WordDetect context="FindMemberObjectMath" attribute="Built-in Objects" String="Math" />+        <WordDetect context="FindMemberObjectNumber" attribute="Built-in Objects" String="Number" />+        <WordDetect context="FindMemberObjectPromise" attribute="Built-in Objects" String="Promise" />+        <WordDetect context="FindMemberObjectJSON" attribute="Built-in Objects" String="JSON" />+        <WordDetect context="FindMemberObjectConsole" attribute="Built-in Objects" String="console" />+        <WordDetect context="FindMemberObjectProcess" attribute="Built-in Objects" String="process" />++        <keyword context="NoRegExp" attribute="Built-in Objects" String="class_builtin" />+        <keyword context="NoRegExp" attribute="Built-in Objects" String="class_dom" />+        <keyword context="FindMemberObjectDOM" attribute="Built-in Objects" String="dom_variable" />+        <keyword context="NoRegExp" attribute="Built-in Objects" String="class_node" />+        <keyword context="NoRegExp" attribute="Built-in Objects" String="node_variable" />+      </context>+      <!-- These constants are highlighted in "Normal" -->+      <context name="BuiltInConstants" attribute="Normal Text" lineEndContext="#stay">+        <keyword context="NoRegExp" attribute="Constant" String="math_constant" />+        <keyword context="NoRegExp" attribute="Constant" String="number_constant" />+        <keyword context="NoRegExp" attribute="Constant" String="dom_constant" />+      </context>++      <!-- DOM Variable -->+      <context name="FindMemberObjectDOM" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop!NoRegExp">+        <DetectSpaces />+        <DetectChar context="#pop!MemberObjectDOM" attribute="Symbol" char="." />+      </context>+      <context name="MemberObjectDOM" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+        <keyword context="#pop!FindMemberObjectDOM" attribute="Object Property (Built-in)" String="dom_property" />+        <keyword context="#pop!FindMemberObjectDOM" attribute="Object Method (Built-in)" String="dom_functions" />+        <IncludeRules context="DefaultMemberObject" />+        <!-- Only for autocomplete -->+        <keyword context="#pop!NoRegExp" attribute="Object Member" String="eventhandler_property" />+        <keyword context="#pop!NoRegExp" attribute="Function Name" String="function_common" />+      </context>+      <!-- Math Class -->+      <context name="FindMemberObjectMath" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop!NoRegExp">+        <DetectSpaces />+        <DetectChar context="#pop!MemberObjectMath" attribute="Symbol" char="." />+      </context>+      <context name="MemberObjectMath" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+        <keyword context="#pop!NoRegExp" attribute="Constant" String="math_constant" />+        <keyword context="#pop!NoRegExp" attribute="Object Method (Built-in)" String="math_functions" />+        <IncludeRules context="DefaultMemberObject" />+      </context>+      <!-- Number Class -->+      <context name="FindMemberObjectNumber" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop!NoRegExp">+        <DetectSpaces />+        <DetectChar context="#pop!MemberObjectNumber" attribute="Symbol" char="." />+      </context>+      <context name="MemberObjectNumber" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+        <keyword context="#pop!NoRegExp" attribute="Constant" String="number_constant" />+        <IncludeRules context="DefaultMemberObject" />+      </context>+      <!-- Promise Class -->+      <context name="FindMemberObjectPromise" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop!NoRegExp">+        <DetectSpaces />+        <DetectChar context="#pop!MemberObjectPromise" attribute="Symbol" char="." />+      </context>+      <context name="MemberObjectPromise" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+        <keyword context="#pop!NoRegExp" attribute="Object Method (Built-in)" String="promise_functions" />+        <IncludeRules context="DefaultMemberObject" />+      </context>+      <!-- JSON Class -->+      <context name="FindMemberObjectJSON" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop!NoRegExp">+        <DetectSpaces />+        <DetectChar context="#pop!MemberObjectJSON" attribute="Symbol" char="." />+      </context>+      <context name="MemberObjectJSON" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+        <keyword context="#pop!NoRegExp" attribute="Object Method (Built-in)" String="json_functions" />+        <IncludeRules context="DefaultMemberObject" />+      </context>+      <!-- Console Object -->+      <context name="FindMemberObjectConsole" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop!NoRegExp">+        <DetectSpaces />+        <DetectChar context="#pop!MemberObjectConsole" attribute="Symbol" char="." />+      </context>+      <context name="MemberObjectConsole" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+        <keyword context="#pop!NoRegExp" attribute="Object Method (Built-in)" String="console_functions" />+        <IncludeRules context="DefaultMemberObject" />+      </context>+      <!-- Process Object -->+      <context name="FindMemberObjectProcess" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop!NoRegExp">+        <DetectSpaces />+        <DetectChar context="#pop!MemberObjectProcess" attribute="Symbol" char="." />+      </context>+      <context name="MemberObjectProcess" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+        <keyword context="#pop!NoRegExp" attribute="Object Method (Built-in)" String="process_functions" />+        <keyword context="#pop!NoRegExp" attribute="Object Property (Built-in)" String="process_property" />+        <IncludeRules context="DefaultMemberObject" />+      </context>++    </contexts>++    <itemDatas>+      <itemData name="Normal Text"  defStyleNum="dsNormal"  spellChecking="false" />+      <itemData name="Keyword"      defStyleNum="dsKeyword" spellChecking="false" />+      <itemData name="ControlFlow"  defStyleNum="dsControlFlow" spellChecking="false" />+      <itemData name="Reserved"     defStyleNum="dsKeyword" italic="true" spellChecking="false" />+      <itemData name="Module"       defStyleNum="dsImport" spellChecking="false" />+      <itemData name="Objects"      defStyleNum="dsNormal" spellChecking="false" />+      <itemData name="Object Member" defStyleNum="dsAttribute" spellChecking="false" />++      <itemData name="Function Name"    defStyleNum="dsFunction" spellChecking="false" />+      <itemData name="Function Declaration" defStyleNum="dsFunction" spellChecking="false" />+      <itemData name="Built-in Objects" defStyleNum="dsBuiltIn" spellChecking="false" />+      <itemData name="Object Property (Built-in)" defStyleNum="dsAttribute" italic="1" spellChecking="false" />+      <itemData name="Object Method (Built-in)" defStyleNum="dsFunction" italic="1" spellChecking="false" />+      <itemData name="Function (Built-in)" defStyleNum="dsPreprocessor" spellChecking="false" />+      <itemData name="Constant"         defStyleNum="dsConstant" spellChecking="false" />++      <itemData name="Decimal"      defStyleNum="dsDecVal" spellChecking="false" />+      <itemData name="Octal"        defStyleNum="dsBaseN" spellChecking="false" />+      <itemData name="Hex"          defStyleNum="dsBaseN" spellChecking="false" />+      <itemData name="Binary"       defStyleNum="dsBaseN" spellChecking="false" />+      <itemData name="Float"        defStyleNum="dsFloat" spellChecking="false" />+      <itemData name="Escape"       defStyleNum="dsSpecialChar" spellChecking="false" />+      <itemData name="Reserved Char. Escape" defStyleNum="dsSpecialChar" bold="1" spellChecking="false" />+      <itemData name="String"       defStyleNum="dsString" />+      <itemData name="Template"     defStyleNum="dsVerbatimString" />+      <itemData name="Substitution" defStyleNum="dsSpecialChar" spellChecking="false" />++      <itemData name="Comment"      defStyleNum="dsComment" />+      <itemData name="Symbol"       defStyleNum="dsOperator" spellChecking="false" />+      <itemData name="Special Operators" defStyleNum="dsKeyword" spellChecking="false" />+      <itemData name="Regular Expression" defStyleNum="dsSpecialString" spellChecking="false" />+      <itemData name="Pattern Internal Operator" defStyleNum="dsSpecialChar" spellChecking="false" />+      <itemData name="Pattern Character Class" defStyleNum="dsSpecialChar" spellChecking="false" />+      <itemData name="Region Marker" defStyleNum="dsRegionMarker" spellChecking="false" />+      <itemData name="JSON"         defStyleNum="dsDataType" bold="0" spellChecking="false" />+      <itemData name="Error"        defStyleNum="dsError" spellChecking="false"/>+    </itemDatas>++  </highlighting>++  <general>+    <comments>+      <comment name="singleLine" start="//" />+      <comment name="multiLine" start="/*" end="*/" region="Comment" />+    </comments>+    <keywords casesensitive="1" />+  </general>+ </language>  <!-- kate: space-indent on; indent-width 2; -->
syntax/json.xml view
@@ -12,7 +12,7 @@  ** http://tools.ietf.org/html/rfc4627  *************************************************************************** -->-<language name="JSON" section="Markup" version="3" kateversion="2.4" extensions="*.json;.kateproject;.arcconfig;*.gltf" mimetype="application/json" author="Sebastian Pipping (sebastian@pipping.org)" license="GPL">+<language name="JSON" section="Markup" version="4" kateversion="2.4" extensions="*.json;.kateproject;.arcconfig;*.geojson;*.gltf" mimetype="application/json" author="Sebastian Pipping (sebastian@pipping.org)" license="GPL">   <highlighting>     <list name="Constants">       <item>null</item>
syntax/jsp.xml view
@@ -1,3054 +1,238 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE language SYSTEM "language.dtd">-<language version="4" kateversion="2.4" name="JSP" section="Markup" extensions="*.jsp;*.JSP" mimetype="text/html" casesensitive="false" author="Rob Martin (rob@gamepimp.com)" license="LGPL">-  <highlighting>--    <list name="java-1.4.2-classes">-      <item>ARG_IN</item>-      <item>ARG_INOUT</item>-      <item>ARG_OUT</item>-      <item>AWTError</item>-      <item>AWTEvent</item>-      <item>AWTEventListener</item>-      <item>AWTEventListenerProxy</item>-      <item>AWTEventMulticaster</item>-      <item>AWTException</item>-      <item>AWTKeyStroke</item>-      <item>AWTPermission</item>-      <item>AbstractAction</item>-      <item>AbstractBorder</item>-      <item>AbstractButton</item>-      <item>AbstractCellEditor</item>-      <item>AbstractCollection</item>-      <item>AbstractColorChooserPanel</item>-      <item>AbstractDocument</item>-      <item>AbstractFormatter</item>-      <item>AbstractFormatterFactory</item>-      <item>AbstractInterruptibleChannel</item>-      <item>AbstractLayoutCache</item>-      <item>AbstractList</item>-      <item>AbstractListModel</item>-      <item>AbstractMap</item>-      <item>AbstractMethodError</item>-      <item>AbstractPreferences</item>-      <item>AbstractSelectableChannel</item>-      <item>AbstractSelectionKey</item>-      <item>AbstractSelector</item>-      <item>AbstractSequentialList</item>-      <item>AbstractSet</item>-      <item>AbstractSpinnerModel</item>-      <item>AbstractTableModel</item>-      <item>AbstractUndoableEdit</item>-      <item>AbstractWriter</item>-      <item>AccessControlContext</item>-      <item>AccessControlException</item>-      <item>AccessController</item>-      <item>AccessException</item>-      <item>Accessible</item>-      <item>AccessibleAction</item>-      <item>AccessibleBundle</item>-      <item>AccessibleComponent</item>-      <item>AccessibleContext</item>-      <item>AccessibleEditableText</item>-      <item>AccessibleExtendedComponent</item>-      <item>AccessibleExtendedTable</item>-      <item>AccessibleHyperlink</item>-      <item>AccessibleHypertext</item>-      <item>AccessibleIcon</item>-      <item>AccessibleKeyBinding</item>-      <item>AccessibleObject</item>-      <item>AccessibleRelation</item>-      <item>AccessibleRelationSet</item>-      <item>AccessibleResourceBundle</item>-      <item>AccessibleRole</item>-      <item>AccessibleSelection</item>-      <item>AccessibleState</item>-      <item>AccessibleStateSet</item>-      <item>AccessibleTable</item>-      <item>AccessibleTableModelChange</item>-      <item>AccessibleText</item>-      <item>AccessibleValue</item>-      <item>AccountExpiredException</item>-      <item>Acl</item>-      <item>AclEntry</item>-      <item>AclNotFoundException</item>-      <item>Action</item>-      <item>ActionEvent</item>-      <item>ActionListener</item>-      <item>ActionMap</item>-      <item>ActionMapUIResource</item>-      <item>Activatable</item>-      <item>ActivateFailedException</item>-      <item>ActivationDesc</item>-      <item>ActivationException</item>-      <item>ActivationGroup</item>-      <item>ActivationGroupDesc</item>-      <item>ActivationGroupID</item>-      <item>ActivationGroup_Stub</item>-      <item>ActivationID</item>-      <item>ActivationInstantiator</item>-      <item>ActivationMonitor</item>-      <item>ActivationSystem</item>-      <item>Activator</item>-      <item>ActiveEvent</item>-      <item>ActiveValue</item>-      <item>AdapterActivator</item>-      <item>AdapterActivatorOperations</item>-      <item>AdapterAlreadyExists</item>-      <item>AdapterAlreadyExistsHelper</item>-      <item>AdapterInactive</item>-      <item>AdapterInactiveHelper</item>-      <item>AdapterNonExistent</item>-      <item>AdapterNonExistentHelper</item>-      <item>AddressHelper</item>-      <item>Adjustable</item>-      <item>AdjustmentEvent</item>-      <item>AdjustmentListener</item>-      <item>Adler32</item>-      <item>AffineTransform</item>-      <item>AffineTransformOp</item>-      <item>AlgorithmParameterGenerator</item>-      <item>AlgorithmParameterGeneratorSpi</item>-      <item>AlgorithmParameterSpec</item>-      <item>AlgorithmParameters</item>-      <item>AlgorithmParametersSpi</item>-      <item>AlignmentAction</item>-      <item>AllPermission</item>-      <item>AlphaComposite</item>-      <item>AlreadyBound</item>-      <item>AlreadyBoundException</item>-      <item>AlreadyBoundHelper</item>-      <item>AlreadyBoundHolder</item>-      <item>AlreadyConnectedException</item>-      <item>AncestorEvent</item>-      <item>AncestorListener</item>-      <item>Annotation</item>-      <item>Any</item>-      <item>AnyHolder</item>-      <item>AnySeqHelper</item>-      <item>AnySeqHelper</item>-      <item>AnySeqHolder</item>-      <item>AppConfigurationEntry</item>-      <item>Applet</item>-      <item>AppletContext</item>-      <item>AppletInitializer</item>-      <item>AppletStub</item>-      <item>ApplicationException</item>-      <item>Arc2D</item>-      <item>Area</item>-      <item>AreaAveragingScaleFilter</item>-      <item>ArithmeticException</item>-      <item>Array</item>-      <item>Array</item>-      <item>ArrayIndexOutOfBoundsException</item>-      <item>ArrayList</item>-      <item>ArrayStoreException</item>-      <item>Arrays</item>-      <item>AssertionError</item>-      <item>AsyncBoxView</item>-      <item>AsynchronousCloseException</item>-      <item>Attr</item>-      <item>Attribute</item>-      <item>Attribute</item>-      <item>Attribute</item>-      <item>Attribute</item>-      <item>Attribute</item>-      <item>AttributeContext</item>-      <item>AttributeException</item>-      <item>AttributeInUseException</item>-      <item>AttributeList</item>-      <item>AttributeList</item>-      <item>AttributeListImpl</item>-      <item>AttributeModificationException</item>-      <item>AttributeSet</item>-      <item>AttributeSet</item>-      <item>AttributeSetUtilities</item>-      <item>AttributeUndoableEdit</item>-      <item>AttributedCharacterIterator</item>-      <item>AttributedString</item>-      <item>Attributes</item>-      <item>Attributes</item>-      <item>Attributes</item>-      <item>AttributesImpl</item>-      <item>AudioClip</item>-      <item>AudioFileFormat</item>-      <item>AudioFileReader</item>-      <item>AudioFileWriter</item>-      <item>AudioFormat</item>-      <item>AudioInputStream</item>-      <item>AudioPermission</item>-      <item>AudioSystem</item>-      <item>AuthPermission</item>-      <item>AuthenticationException</item>-      <item>AuthenticationNotSupportedException</item>-      <item>Authenticator</item>-      <item>Autoscroll</item>-      <item>BAD_CONTEXT</item>-      <item>BAD_INV_ORDER</item>-      <item>BAD_OPERATION</item>-      <item>BAD_PARAM</item>-      <item>BAD_POLICY</item>-      <item>BAD_POLICY_TYPE</item>-      <item>BAD_POLICY_VALUE</item>-      <item>BAD_TYPECODE</item>-      <item>BCSIterator</item>-      <item>BCSSServiceProvider</item>-      <item>BYTE_ARRAY</item>-      <item>BackingStoreException</item>-      <item>BadKind</item>-      <item>BadLocationException</item>-      <item>BadPaddingException</item>-      <item>BandCombineOp</item>-      <item>BandedSampleModel</item>-      <item>BasicArrowButton</item>-      <item>BasicAttribute</item>-      <item>BasicAttributes</item>-      <item>BasicBorders</item>-      <item>BasicButtonListener</item>-      <item>BasicButtonUI</item>-      <item>BasicCaret</item>-      <item>BasicCheckBoxMenuItemUI</item>-      <item>BasicCheckBoxUI</item>-      <item>BasicColorChooserUI</item>-      <item>BasicComboBoxEditor</item>-      <item>BasicComboBoxRenderer</item>-      <item>BasicComboBoxUI</item>-      <item>BasicComboPopup</item>-      <item>BasicDesktopIconUI</item>-      <item>BasicDesktopPaneUI</item>-      <item>BasicDirectoryModel</item>-      <item>BasicEditorPaneUI</item>-      <item>BasicFileChooserUI</item>-      <item>BasicFormattedTextFieldUI</item>-      <item>BasicGraphicsUtils</item>-      <item>BasicHTML</item>-      <item>BasicHighlighter</item>-      <item>BasicIconFactory</item>-      <item>BasicInternalFrameTitlePane</item>-      <item>BasicInternalFrameUI</item>-      <item>BasicLabelUI</item>-      <item>BasicListUI</item>-      <item>BasicLookAndFeel</item>-      <item>BasicMenuBarUI</item>-      <item>BasicMenuItemUI</item>-      <item>BasicMenuUI</item>-      <item>BasicOptionPaneUI</item>-      <item>BasicPanelUI</item>-      <item>BasicPasswordFieldUI</item>-      <item>BasicPermission</item>-      <item>BasicPopupMenuSeparatorUI</item>-      <item>BasicPopupMenuUI</item>-      <item>BasicProgressBarUI</item>-      <item>BasicRadioButtonMenuItemUI</item>-      <item>BasicRadioButtonUI</item>-      <item>BasicRootPaneUI</item>-      <item>BasicScrollBarUI</item>-      <item>BasicScrollPaneUI</item>-      <item>BasicSeparatorUI</item>-      <item>BasicSliderUI</item>-      <item>BasicSpinnerUI</item>-      <item>BasicSplitPaneDivider</item>-      <item>BasicSplitPaneUI</item>-      <item>BasicStroke</item>-      <item>BasicTabbedPaneUI</item>-      <item>BasicTableHeaderUI</item>-      <item>BasicTableUI</item>-      <item>BasicTextAreaUI</item>-      <item>BasicTextFieldUI</item>-      <item>BasicTextPaneUI</item>-      <item>BasicTextUI</item>-      <item>BasicToggleButtonUI</item>-      <item>BasicToolBarSeparatorUI</item>-      <item>BasicToolBarUI</item>-      <item>BasicToolTipUI</item>-      <item>BasicTreeUI</item>-      <item>BasicViewportUI</item>-      <item>BatchUpdateException</item>-      <item>BeanContext</item>-      <item>BeanContextChild</item>-      <item>BeanContextChildComponentProxy</item>-      <item>BeanContextChildSupport</item>-      <item>BeanContextContainerProxy</item>-      <item>BeanContextEvent</item>-      <item>BeanContextMembershipEvent</item>-      <item>BeanContextMembershipListener</item>-      <item>BeanContextProxy</item>-      <item>BeanContextServiceAvailableEvent</item>-      <item>BeanContextServiceProvider</item>-      <item>BeanContextServiceProviderBeanInfo</item>-      <item>BeanContextServiceRevokedEvent</item>-      <item>BeanContextServiceRevokedListener</item>-      <item>BeanContextServices</item>-      <item>BeanContextServicesListener</item>-      <item>BeanContextServicesSupport</item>-      <item>BeanContextSupport</item>-      <item>BeanDescriptor</item>-      <item>BeanInfo</item>-      <item>Beans</item>-      <item>BeepAction</item>-      <item>BevelBorder</item>-      <item>BevelBorderUIResource</item>-      <item>Bias</item>-      <item>Bidi</item>-      <item>BigDecimal</item>-      <item>BigInteger</item>-      <item>BinaryRefAddr</item>-      <item>BindException</item>-      <item>Binding</item>-      <item>Binding</item>-      <item>BindingHelper</item>-      <item>BindingHolder</item>-      <item>BindingIterator</item>-      <item>BindingIteratorHelper</item>-      <item>BindingIteratorHolder</item>-      <item>BindingIteratorOperations</item>-      <item>BindingIteratorPOA</item>-      <item>BindingListHelper</item>-      <item>BindingListHolder</item>-      <item>BindingType</item>-      <item>BindingTypeHelper</item>-      <item>BindingTypeHolder</item>-      <item>BitSet</item>-      <item>Blob</item>-      <item>BlockView</item>-      <item>BoldAction</item>-      <item>Book</item>-      <item>Boolean</item>-      <item>BooleanControl</item>-      <item>BooleanHolder</item>-      <item>BooleanSeqHelper</item>-      <item>BooleanSeqHolder</item>-      <item>Border</item>-      <item>BorderFactory</item>-      <item>BorderLayout</item>-      <item>BorderUIResource</item>-      <item>BoundedRangeModel</item>-      <item>Bounds</item>-      <item>Bounds</item>-      <item>Box</item>-      <item>BoxLayout</item>-      <item>BoxPainter</item>-      <item>BoxView</item>-      <item>BoxedValueHelper</item>-      <item>BreakIterator</item>-      <item>Buffer</item>-      <item>BufferCapabilities</item>-      <item>BufferOverflowException</item>-      <item>BufferStrategy</item>-      <item>BufferUnderflowException</item>-      <item>BufferedImage</item>-      <item>BufferedImageFilter</item>-      <item>BufferedImageOp</item>-      <item>BufferedInputStream</item>-      <item>BufferedOutputStream</item>-      <item>BufferedReader</item>-      <item>BufferedWriter</item>-      <item>Button</item>-      <item>ButtonAreaLayout</item>-      <item>ButtonBorder</item>-      <item>ButtonBorder</item>-      <item>ButtonGroup</item>-      <item>ButtonModel</item>-      <item>ButtonUI</item>-      <item>Byte</item>-      <item>ByteArrayInputStream</item>-      <item>ByteArrayOutputStream</item>-      <item>ByteBuffer</item>-      <item>ByteChannel</item>-      <item>ByteHolder</item>-      <item>ByteLookupTable</item>-      <item>ByteOrder</item>-      <item>CDATASection</item>-      <item>CHAR_ARRAY</item>-      <item>CMMException</item>-      <item>COMM_FAILURE</item>-      <item>CRC32</item>-      <item>CRL</item>-      <item>CRLException</item>-      <item>CRLSelector</item>-      <item>CSS</item>-      <item>CTX_RESTRICT_SCOPE</item>-      <item>Calendar</item>-      <item>CallableStatement</item>-      <item>Callback</item>-      <item>CallbackHandler</item>-      <item>CancelablePrintJob</item>-      <item>CancelledKeyException</item>-      <item>CannotProceed</item>-      <item>CannotProceedException</item>-      <item>CannotProceedHelper</item>-      <item>CannotProceedHolder</item>-      <item>CannotRedoException</item>-      <item>CannotUndoException</item>-      <item>Canvas</item>-      <item>CardLayout</item>-      <item>Caret</item>-      <item>CaretEvent</item>-      <item>CaretListener</item>-      <item>CaretPolicy</item>-      <item>CellEditor</item>-      <item>CellEditorListener</item>-      <item>CellRendererPane</item>-      <item>CertPath</item>-      <item>CertPathBuilder</item>-      <item>CertPathBuilderException</item>-      <item>CertPathBuilderResult</item>-      <item>CertPathBuilderSpi</item>-      <item>CertPathParameters</item>-      <item>CertPathRep</item>-      <item>CertPathValidator</item>-      <item>CertPathValidatorException</item>-      <item>CertPathValidatorResult</item>-      <item>CertPathValidatorSpi</item>-      <item>CertSelector</item>-      <item>CertStore</item>-      <item>CertStoreException</item>-      <item>CertStoreParameters</item>-      <item>CertStoreSpi</item>-      <item>Certificate</item>-      <item>Certificate</item>-      <item>Certificate</item>-      <item>CertificateEncodingException</item>-      <item>CertificateEncodingException</item>-      <item>CertificateException</item>-      <item>CertificateException</item>-      <item>CertificateExpiredException</item>-      <item>CertificateExpiredException</item>-      <item>CertificateFactory</item>-      <item>CertificateFactorySpi</item>-      <item>CertificateNotYetValidException</item>-      <item>CertificateNotYetValidException</item>-      <item>CertificateParsingException</item>-      <item>CertificateParsingException</item>-      <item>CertificateRep</item>-      <item>ChangeEvent</item>-      <item>ChangeListener</item>-      <item>ChangedCharSetException</item>-      <item>Channel</item>-      <item>ChannelBinding</item>-      <item>Channels</item>-      <item>CharArrayReader</item>-      <item>CharArrayWriter</item>-      <item>CharBuffer</item>-      <item>CharConversionException</item>-      <item>CharHolder</item>-      <item>CharSeqHelper</item>-      <item>CharSeqHolder</item>-      <item>CharSequence</item>-      <item>Character</item>-      <item>CharacterAttribute</item>-      <item>CharacterCodingException</item>-      <item>CharacterConstants</item>-      <item>CharacterData</item>-      <item>CharacterIterator</item>-      <item>Charset</item>-      <item>CharsetDecoder</item>-      <item>CharsetEncoder</item>-      <item>CharsetProvider</item>-      <item>Checkbox</item>-      <item>CheckboxGroup</item>-      <item>CheckboxMenuItem</item>-      <item>CheckedInputStream</item>-      <item>CheckedOutputStream</item>-      <item>Checksum</item>-      <item>Choice</item>-      <item>ChoiceCallback</item>-      <item>ChoiceFormat</item>-      <item>Chromaticity</item>-      <item>Cipher</item>-      <item>CipherInputStream</item>-      <item>CipherOutputStream</item>-      <item>CipherSpi</item>-      <item>Class</item>-      <item>ClassCastException</item>-      <item>ClassCircularityError</item>-      <item>ClassDesc</item>-      <item>ClassFormatError</item>-      <item>ClassLoader</item>-      <item>ClassNotFoundException</item>-      <item>ClientRequestInfo</item>-      <item>ClientRequestInfoOperations</item>-      <item>ClientRequestInterceptor</item>-      <item>ClientRequestInterceptorOperations</item>-      <item>Clip</item>-      <item>Clipboard</item>-      <item>ClipboardOwner</item>-      <item>Clob</item>-      <item>CloneNotSupportedException</item>-      <item>Cloneable</item>-      <item>ClosedByInterruptException</item>-      <item>ClosedChannelException</item>-      <item>ClosedSelectorException</item>-      <item>CodeSets</item>-      <item>CodeSource</item>-      <item>Codec</item>-      <item>CodecFactory</item>-      <item>CodecFactoryHelper</item>-      <item>CodecFactoryOperations</item>-      <item>CodecOperations</item>-      <item>CoderMalfunctionError</item>-      <item>CoderResult</item>-      <item>CodingErrorAction</item>-      <item>CollationElementIterator</item>-      <item>CollationKey</item>-      <item>Collator</item>-      <item>Collection</item>-      <item>CollectionCertStoreParameters</item>-      <item>Collections</item>-      <item>Color</item>-      <item>ColorAttribute</item>-      <item>ColorChooserComponentFactory</item>-      <item>ColorChooserUI</item>-      <item>ColorConstants</item>-      <item>ColorConvertOp</item>-      <item>ColorModel</item>-      <item>ColorSelectionModel</item>-      <item>ColorSpace</item>-      <item>ColorSupported</item>-      <item>ColorType</item>-      <item>ColorUIResource</item>-      <item>ComboBoxEditor</item>-      <item>ComboBoxModel</item>-      <item>ComboBoxUI</item>-      <item>ComboPopup</item>-      <item>CommandEnvironment</item>-      <item>Comment</item>-      <item>CommunicationException</item>-      <item>Comparable</item>-      <item>Comparator</item>-      <item>Compiler</item>-      <item>CompletionStatus</item>-      <item>CompletionStatusHelper</item>-      <item>Component</item>-      <item>ComponentAdapter</item>-      <item>ComponentColorModel</item>-      <item>ComponentEvent</item>-      <item>ComponentIdHelper</item>-      <item>ComponentInputMap</item>-      <item>ComponentInputMapUIResource</item>-      <item>ComponentListener</item>-      <item>ComponentOrientation</item>-      <item>ComponentSampleModel</item>-      <item>ComponentUI</item>-      <item>ComponentView</item>-      <item>Composite</item>-      <item>CompositeContext</item>-      <item>CompositeName</item>-      <item>CompositeView</item>-      <item>CompoundBorder</item>-      <item>CompoundBorderUIResource</item>-      <item>CompoundControl</item>-      <item>CompoundEdit</item>-      <item>CompoundName</item>-      <item>Compression</item>-      <item>ConcurrentModificationException</item>-      <item>Configuration</item>-      <item>ConfigurationException</item>-      <item>ConfirmationCallback</item>-      <item>ConnectException</item>-      <item>ConnectException</item>-      <item>ConnectIOException</item>-      <item>Connection</item>-      <item>ConnectionEvent</item>-      <item>ConnectionEventListener</item>-      <item>ConnectionPendingException</item>-      <item>ConnectionPoolDataSource</item>-      <item>ConsoleHandler</item>-      <item>Constraints</item>-      <item>Constructor</item>-      <item>Container</item>-      <item>ContainerAdapter</item>-      <item>ContainerEvent</item>-      <item>ContainerListener</item>-      <item>ContainerOrderFocusTraversalPolicy</item>-      <item>Content</item>-      <item>ContentHandler</item>-      <item>ContentHandler</item>-      <item>ContentHandlerFactory</item>-      <item>ContentModel</item>-      <item>Context</item>-      <item>Context</item>-      <item>ContextList</item>-      <item>ContextNotEmptyException</item>-      <item>ContextualRenderedImageFactory</item>-      <item>Control</item>-      <item>Control</item>-      <item>ControlFactory</item>-      <item>ControllerEventListener</item>-      <item>ConvolveOp</item>-      <item>CookieHolder</item>-      <item>Copies</item>-      <item>CopiesSupported</item>-      <item>CopyAction</item>-      <item>CredentialExpiredException</item>-      <item>CropImageFilter</item>-      <item>CubicCurve2D</item>-      <item>Currency</item>-      <item>Current</item>-      <item>Current</item>-      <item>Current</item>-      <item>CurrentHelper</item>-      <item>CurrentHelper</item>-      <item>CurrentHelper</item>-      <item>CurrentHolder</item>-      <item>CurrentOperations</item>-      <item>CurrentOperations</item>-      <item>CurrentOperations</item>-      <item>Cursor</item>-      <item>CustomMarshal</item>-      <item>CustomValue</item>-      <item>Customizer</item>-      <item>CutAction</item>-      <item>DATA_CONVERSION</item>-      <item>DESKeySpec</item>-      <item>DESedeKeySpec</item>-      <item>DGC</item>-      <item>DHGenParameterSpec</item>-      <item>DHKey</item>-      <item>DHParameterSpec</item>-      <item>DHPrivateKey</item>-      <item>DHPrivateKeySpec</item>-      <item>DHPublicKey</item>-      <item>DHPublicKeySpec</item>-      <item>DOMException</item>-      <item>DOMImplementation</item>-      <item>DOMLocator</item>-      <item>DOMResult</item>-      <item>DOMSource</item>-      <item>DSAKey</item>-      <item>DSAKeyPairGenerator</item>-      <item>DSAParameterSpec</item>-      <item>DSAParams</item>-      <item>DSAPrivateKey</item>-      <item>DSAPrivateKeySpec</item>-      <item>DSAPublicKey</item>-      <item>DSAPublicKeySpec</item>-      <item>DTD</item>-      <item>DTDConstants</item>-      <item>DTDHandler</item>-      <item>DataBuffer</item>-      <item>DataBufferByte</item>-      <item>DataBufferDouble</item>-      <item>DataBufferFloat</item>-      <item>DataBufferInt</item>-      <item>DataBufferShort</item>-      <item>DataBufferUShort</item>-      <item>DataFlavor</item>-      <item>DataFormatException</item>-      <item>DataInput</item>-      <item>DataInputStream</item>-      <item>DataInputStream</item>-      <item>DataLine</item>-      <item>DataOutput</item>-      <item>DataOutputStream</item>-      <item>DataOutputStream</item>-      <item>DataSource</item>-      <item>DataTruncation</item>-      <item>DatabaseMetaData</item>-      <item>DatagramChannel</item>-      <item>DatagramPacket</item>-      <item>DatagramSocket</item>-      <item>DatagramSocketImpl</item>-      <item>DatagramSocketImplFactory</item>-      <item>Date</item>-      <item>Date</item>-      <item>DateEditor</item>-      <item>DateFormat</item>-      <item>DateFormatSymbols</item>-      <item>DateFormatter</item>-      <item>DateTimeAtCompleted</item>-      <item>DateTimeAtCreation</item>-      <item>DateTimeAtProcessing</item>-      <item>DateTimeSyntax</item>-      <item>DebugGraphics</item>-      <item>DecimalFormat</item>-      <item>DecimalFormatSymbols</item>-      <item>DeclHandler</item>-      <item>DefaultBoundedRangeModel</item>-      <item>DefaultButtonModel</item>-      <item>DefaultCaret</item>-      <item>DefaultCellEditor</item>-      <item>DefaultColorSelectionModel</item>-      <item>DefaultComboBoxModel</item>-      <item>DefaultDesktopManager</item>-      <item>DefaultEditor</item>-      <item>DefaultEditorKit</item>-      <item>DefaultFocusManager</item>-      <item>DefaultFocusTraversalPolicy</item>-      <item>DefaultFormatter</item>-      <item>DefaultFormatterFactory</item>-      <item>DefaultHandler</item>-      <item>DefaultHighlightPainter</item>-      <item>DefaultHighlighter</item>-      <item>DefaultKeyTypedAction</item>-      <item>DefaultKeyboardFocusManager</item>-      <item>DefaultListCellRenderer</item>-      <item>DefaultListModel</item>-      <item>DefaultListSelectionModel</item>-      <item>DefaultMenuLayout</item>-      <item>DefaultMetalTheme</item>-      <item>DefaultMutableTreeNode</item>-      <item>DefaultPersistenceDelegate</item>-      <item>DefaultSelectionType</item>-      <item>DefaultSingleSelectionModel</item>-      <item>DefaultStyledDocument</item>-      <item>DefaultTableCellRenderer</item>-      <item>DefaultTableColumnModel</item>-      <item>DefaultTableModel</item>-      <item>DefaultTextUI</item>-      <item>DefaultTreeCellEditor</item>-      <item>DefaultTreeCellRenderer</item>-      <item>DefaultTreeModel</item>-      <item>DefaultTreeSelectionModel</item>-      <item>DefinitionKind</item>-      <item>DefinitionKindHelper</item>-      <item>Deflater</item>-      <item>DeflaterOutputStream</item>-      <item>Delegate</item>-      <item>Delegate</item>-      <item>Delegate</item>-      <item>DelegationPermission</item>-      <item>DesignMode</item>-      <item>DesktopIconUI</item>-      <item>DesktopManager</item>-      <item>DesktopPaneUI</item>-      <item>Destination</item>-      <item>DestinationType</item>-      <item>DestroyFailedException</item>-      <item>Destroyable</item>-      <item>Dialog</item>-      <item>DialogType</item>-      <item>Dictionary</item>-      <item>DigestException</item>-      <item>DigestInputStream</item>-      <item>DigestOutputStream</item>-      <item>Dimension</item>-      <item>Dimension2D</item>-      <item>DimensionUIResource</item>-      <item>DirContext</item>-      <item>DirObjectFactory</item>-      <item>DirStateFactory</item>-      <item>DirectColorModel</item>-      <item>DirectoryManager</item>-      <item>DisplayMode</item>-      <item>DnDConstants</item>-      <item>Doc</item>-      <item>DocAttribute</item>-      <item>DocAttributeSet</item>-      <item>DocFlavor</item>-      <item>DocPrintJob</item>-      <item>Document</item>-      <item>Document</item>-      <item>DocumentBuilder</item>-      <item>DocumentBuilderFactory</item>-      <item>DocumentEvent</item>-      <item>DocumentFilter</item>-      <item>DocumentFragment</item>-      <item>DocumentHandler</item>-      <item>DocumentListener</item>-      <item>DocumentName</item>-      <item>DocumentParser</item>-      <item>DocumentType</item>-      <item>DomainCombiner</item>-      <item>DomainManager</item>-      <item>DomainManagerOperations</item>-      <item>Double</item>-      <item>Double</item>-      <item>Double</item>-      <item>Double</item>-      <item>Double</item>-      <item>Double</item>-      <item>Double</item>-      <item>Double</item>-      <item>Double</item>-      <item>DoubleBuffer</item>-      <item>DoubleHolder</item>-      <item>DoubleSeqHelper</item>-      <item>DoubleSeqHolder</item>-      <item>DragGestureEvent</item>-      <item>DragGestureListener</item>-      <item>DragGestureRecognizer</item>-      <item>DragSource</item>-      <item>DragSourceAdapter</item>-      <item>DragSourceContext</item>-      <item>DragSourceDragEvent</item>-      <item>DragSourceDropEvent</item>-      <item>DragSourceEvent</item>-      <item>DragSourceListener</item>-      <item>DragSourceMotionListener</item>-      <item>Driver</item>-      <item>DriverManager</item>-      <item>DriverPropertyInfo</item>-      <item>DropTarget</item>-      <item>DropTargetAdapter</item>-      <item>DropTargetAutoScroller</item>-      <item>DropTargetContext</item>-      <item>DropTargetDragEvent</item>-      <item>DropTargetDropEvent</item>-      <item>DropTargetEvent</item>-      <item>DropTargetListener</item>-      <item>DuplicateName</item>-      <item>DuplicateNameHelper</item>-      <item>DynAny</item>-      <item>DynAny</item>-      <item>DynAnyFactory</item>-      <item>DynAnyFactoryHelper</item>-      <item>DynAnyFactoryOperations</item>-      <item>DynAnyHelper</item>-      <item>DynAnyOperations</item>-      <item>DynAnySeqHelper</item>-      <item>DynArray</item>-      <item>DynArray</item>-      <item>DynArrayHelper</item>-      <item>DynArrayOperations</item>-      <item>DynEnum</item>-      <item>DynEnum</item>-      <item>DynEnumHelper</item>-      <item>DynEnumOperations</item>-      <item>DynFixed</item>-      <item>DynFixed</item>-      <item>DynFixedHelper</item>-      <item>DynFixedOperations</item>-      <item>DynSequence</item>-      <item>DynSequence</item>-      <item>DynSequenceHelper</item>-      <item>DynSequenceOperations</item>-      <item>DynStruct</item>-      <item>DynStruct</item>-      <item>DynStructHelper</item>-      <item>DynStructOperations</item>-      <item>DynUnion</item>-      <item>DynUnion</item>-      <item>DynUnionHelper</item>-      <item>DynUnionOperations</item>-      <item>DynValue</item>-      <item>DynValue</item>-      <item>DynValueBox</item>-      <item>DynValueBoxOperations</item>-      <item>DynValueCommon</item>-      <item>DynValueCommonOperations</item>-      <item>DynValueHelper</item>-      <item>DynValueOperations</item>-      <item>DynamicImplementation</item>-      <item>DynamicImplementation</item>-      <item>DynamicUtilTreeNode</item>-      <item>ENCODING_CDR_ENCAPS</item>-      <item>EOFException</item>-      <item>EditorKit</item>-      <item>Element</item>-      <item>Element</item>-      <item>Element</item>-      <item>ElementChange</item>-      <item>ElementEdit</item>-      <item>ElementIterator</item>-      <item>ElementSpec</item>-      <item>Ellipse2D</item>-      <item>EmptyBorder</item>-      <item>EmptyBorderUIResource</item>-      <item>EmptySelectionModel</item>-      <item>EmptyStackException</item>-      <item>EncodedKeySpec</item>-      <item>Encoder</item>-      <item>Encoding</item>-      <item>Encoding</item>-      <item>EncryptedPrivateKeyInfo</item>-      <item>Engineering</item>-      <item>Entity</item>-      <item>Entity</item>-      <item>EntityReference</item>-      <item>EntityResolver</item>-      <item>Entry</item>-      <item>EnumControl</item>-      <item>EnumSyntax</item>-      <item>Enumeration</item>-      <item>Environment</item>-      <item>Error</item>-      <item>ErrorHandler</item>-      <item>ErrorListener</item>-      <item>ErrorManager</item>-      <item>EtchedBorder</item>-      <item>EtchedBorderUIResource</item>-      <item>Event</item>-      <item>EventContext</item>-      <item>EventDirContext</item>-      <item>EventHandler</item>-      <item>EventListener</item>-      <item>EventListenerList</item>-      <item>EventListenerProxy</item>-      <item>EventObject</item>-      <item>EventQueue</item>-      <item>EventSetDescriptor</item>-      <item>EventType</item>-      <item>EventType</item>-      <item>Exception</item>-      <item>ExceptionInInitializerError</item>-      <item>ExceptionList</item>-      <item>ExceptionListener</item>-      <item>ExemptionMechanism</item>-      <item>ExemptionMechanismException</item>-      <item>ExemptionMechanismSpi</item>-      <item>ExpandVetoException</item>-      <item>ExportException</item>-      <item>Expression</item>-      <item>ExtendedRequest</item>-      <item>ExtendedResponse</item>-      <item>Externalizable</item>-      <item>FREE_MEM</item>-      <item>FactoryConfigurationError</item>-      <item>FailedLoginException</item>-      <item>FeatureDescriptor</item>-      <item>Fidelity</item>-      <item>Field</item>-      <item>Field</item>-      <item>Field</item>-      <item>Field</item>-      <item>Field</item>-      <item>FieldBorder</item>-      <item>FieldNameHelper</item>-      <item>FieldNameHelper</item>-      <item>FieldPosition</item>-      <item>FieldView</item>-      <item>File</item>-      <item>FileCacheImageInputStream</item>-      <item>FileCacheImageOutputStream</item>-      <item>FileChannel</item>-      <item>FileChooserUI</item>-      <item>FileDescriptor</item>-      <item>FileDialog</item>-      <item>FileFilter</item>-      <item>FileFilter</item>-      <item>FileHandler</item>-      <item>FileIcon16</item>-      <item>FileImageInputStream</item>-      <item>FileImageOutputStream</item>-      <item>FileInputStream</item>-      <item>FileLock</item>-      <item>FileLockInterruptionException</item>-      <item>FileNameMap</item>-      <item>FileNotFoundException</item>-      <item>FileOutputStream</item>-      <item>FilePermission</item>-      <item>FileReader</item>-      <item>FileSystemView</item>-      <item>FileView</item>-      <item>FileWriter</item>-      <item>FilenameFilter</item>-      <item>Filler</item>-      <item>Filter</item>-      <item>Filter</item>-      <item>FilterBypass</item>-      <item>FilterBypass</item>-      <item>FilterInputStream</item>-      <item>FilterOutputStream</item>-      <item>FilterReader</item>-      <item>FilterWriter</item>-      <item>FilteredImageSource</item>-      <item>Finishings</item>-      <item>FixedHeightLayoutCache</item>-      <item>FixedHolder</item>-      <item>FlatteningPathIterator</item>-      <item>FlavorException</item>-      <item>FlavorMap</item>-      <item>FlavorTable</item>-      <item>FlipContents</item>-      <item>Float</item>-      <item>Float</item>-      <item>Float</item>-      <item>Float</item>-      <item>Float</item>-      <item>Float</item>-      <item>Float</item>-      <item>Float</item>-      <item>Float</item>-      <item>FloatBuffer</item>-      <item>FloatControl</item>-      <item>FloatHolder</item>-      <item>FloatSeqHelper</item>-      <item>FloatSeqHolder</item>-      <item>FlowLayout</item>-      <item>FlowStrategy</item>-      <item>FlowView</item>-      <item>Flush3DBorder</item>-      <item>FocusAdapter</item>-      <item>FocusEvent</item>-      <item>FocusListener</item>-      <item>FocusManager</item>-      <item>FocusTraversalPolicy</item>-      <item>FolderIcon16</item>-      <item>Font</item>-      <item>FontAttribute</item>-      <item>FontConstants</item>-      <item>FontFamilyAction</item>-      <item>FontFormatException</item>-      <item>FontMetrics</item>-      <item>FontRenderContext</item>-      <item>FontSizeAction</item>-      <item>FontUIResource</item>-      <item>ForegroundAction</item>-      <item>FormView</item>-      <item>Format</item>-      <item>FormatConversionProvider</item>-      <item>FormatMismatch</item>-      <item>FormatMismatchHelper</item>-      <item>Formatter</item>-      <item>ForwardRequest</item>-      <item>ForwardRequest</item>-      <item>ForwardRequestHelper</item>-      <item>ForwardRequestHelper</item>-      <item>Frame</item>-      <item>GSSContext</item>-      <item>GSSCredential</item>-      <item>GSSException</item>-      <item>GSSManager</item>-      <item>GSSName</item>-      <item>GZIPInputStream</item>-      <item>GZIPOutputStream</item>-      <item>GapContent</item>-      <item>GatheringByteChannel</item>-      <item>GeneralPath</item>-      <item>GeneralSecurityException</item>-      <item>GetField</item>-      <item>GlyphJustificationInfo</item>-      <item>GlyphMetrics</item>-      <item>GlyphPainter</item>-      <item>GlyphVector</item>-      <item>GlyphView</item>-      <item>GradientPaint</item>-      <item>GraphicAttribute</item>-      <item>Graphics</item>-      <item>Graphics2D</item>-      <item>GraphicsConfigTemplate</item>-      <item>GraphicsConfiguration</item>-      <item>GraphicsDevice</item>-      <item>GraphicsEnvironment</item>-      <item>GrayFilter</item>-      <item>GregorianCalendar</item>-      <item>GridBagConstraints</item>-      <item>GridBagLayout</item>-      <item>GridLayout</item>-      <item>Group</item>-      <item>Guard</item>-      <item>GuardedObject</item>-      <item>HTML</item>-      <item>HTMLDocument</item>-      <item>HTMLEditorKit</item>-      <item>HTMLEditorKit</item>-      <item>HTMLEditorKit</item>-      <item>HTMLFrameHyperlinkEvent</item>-      <item>HTMLWriter</item>-      <item>Handler</item>-      <item>HandlerBase</item>-      <item>HandshakeCompletedEvent</item>-      <item>HandshakeCompletedListener</item>-      <item>HasControls</item>-      <item>HashAttributeSet</item>-      <item>HashDocAttributeSet</item>-      <item>HashMap</item>-      <item>HashPrintJobAttributeSet</item>-      <item>HashPrintRequestAttributeSet</item>-      <item>HashPrintServiceAttributeSet</item>-      <item>HashSet</item>-      <item>Hashtable</item>-      <item>HeadlessException</item>-      <item>HierarchyBoundsAdapter</item>-      <item>HierarchyBoundsListener</item>-      <item>HierarchyEvent</item>-      <item>HierarchyListener</item>-      <item>Highlight</item>-      <item>HighlightPainter</item>-      <item>Highlighter</item>-      <item>HostnameVerifier</item>-      <item>HttpURLConnection</item>-      <item>HttpsURLConnection</item>-      <item>HyperlinkEvent</item>-      <item>HyperlinkListener</item>-      <item>ICC_ColorSpace</item>-      <item>ICC_Profile</item>-      <item>ICC_ProfileGray</item>-      <item>ICC_ProfileRGB</item>-      <item>IDLEntity</item>-      <item>IDLType</item>-      <item>IDLTypeHelper</item>-      <item>IDLTypeOperations</item>-      <item>ID_ASSIGNMENT_POLICY_ID</item>-      <item>ID_UNIQUENESS_POLICY_ID</item>-      <item>IIOByteBuffer</item>-      <item>IIOException</item>-      <item>IIOImage</item>-      <item>IIOInvalidTreeException</item>-      <item>IIOMetadata</item>-      <item>IIOMetadataController</item>-      <item>IIOMetadataFormat</item>-      <item>IIOMetadataFormatImpl</item>-      <item>IIOMetadataNode</item>-      <item>IIOParam</item>-      <item>IIOParamController</item>-      <item>IIOReadProgressListener</item>-      <item>IIOReadUpdateListener</item>-      <item>IIOReadWarningListener</item>-      <item>IIORegistry</item>-      <item>IIOServiceProvider</item>-      <item>IIOWriteProgressListener</item>-      <item>IIOWriteWarningListener</item>-      <item>IMPLICIT_ACTIVATION_POLICY_ID</item>-      <item>IMP_LIMIT</item>-      <item>INITIALIZE</item>-      <item>INPUT_STREAM</item>-      <item>INTERNAL</item>-      <item>INTF_REPOS</item>-      <item>INVALID_TRANSACTION</item>-      <item>INV_FLAG</item>-      <item>INV_IDENT</item>-      <item>INV_OBJREF</item>-      <item>INV_POLICY</item>-      <item>IOException</item>-      <item>IOR</item>-      <item>IORHelper</item>-      <item>IORHolder</item>-      <item>IORInfo</item>-      <item>IORInfoOperations</item>-      <item>IORInterceptor</item>-      <item>IORInterceptorOperations</item>-      <item>IRObject</item>-      <item>IRObjectOperations</item>-      <item>ISO</item>-      <item>Icon</item>-      <item>IconUIResource</item>-      <item>IconView</item>-      <item>IdAssignmentPolicy</item>-      <item>IdAssignmentPolicyOperations</item>-      <item>IdAssignmentPolicyValue</item>-      <item>IdUniquenessPolicy</item>-      <item>IdUniquenessPolicyOperations</item>-      <item>IdUniquenessPolicyValue</item>-      <item>IdentifierHelper</item>-      <item>Identity</item>-      <item>IdentityHashMap</item>-      <item>IdentityScope</item>-      <item>IllegalAccessError</item>-      <item>IllegalAccessException</item>-      <item>IllegalArgumentException</item>-      <item>IllegalBlockSizeException</item>-      <item>IllegalBlockingModeException</item>-      <item>IllegalCharsetNameException</item>-      <item>IllegalComponentStateException</item>-      <item>IllegalMonitorStateException</item>-      <item>IllegalPathStateException</item>-      <item>IllegalSelectorException</item>-      <item>IllegalStateException</item>-      <item>IllegalThreadStateException</item>-      <item>Image</item>-      <item>ImageCapabilities</item>-      <item>ImageConsumer</item>-      <item>ImageFilter</item>-      <item>ImageGraphicAttribute</item>-      <item>ImageIO</item>-      <item>ImageIcon</item>-      <item>ImageInputStream</item>-      <item>ImageInputStreamImpl</item>-      <item>ImageInputStreamSpi</item>-      <item>ImageObserver</item>-      <item>ImageOutputStream</item>-      <item>ImageOutputStreamImpl</item>-      <item>ImageOutputStreamSpi</item>-      <item>ImageProducer</item>-      <item>ImageReadParam</item>-      <item>ImageReader</item>-      <item>ImageReaderSpi</item>-      <item>ImageReaderWriterSpi</item>-      <item>ImageTranscoder</item>-      <item>ImageTranscoderSpi</item>-      <item>ImageTypeSpecifier</item>-      <item>ImageView</item>-      <item>ImageWriteParam</item>-      <item>ImageWriter</item>-      <item>ImageWriterSpi</item>-      <item>ImagingOpException</item>-      <item>ImplicitActivationPolicy</item>-      <item>ImplicitActivationPolicyOperations</item>-      <item>ImplicitActivationPolicyValue</item>-      <item>IncompatibleClassChangeError</item>-      <item>InconsistentTypeCode</item>-      <item>InconsistentTypeCode</item>-      <item>InconsistentTypeCodeHelper</item>-      <item>IndexColorModel</item>-      <item>IndexOutOfBoundsException</item>-      <item>IndexedPropertyDescriptor</item>-      <item>IndirectionException</item>-      <item>Inet4Address</item>-      <item>Inet6Address</item>-      <item>InetAddress</item>-      <item>InetSocketAddress</item>-      <item>Inflater</item>-      <item>InflaterInputStream</item>-      <item>Info</item>-      <item>Info</item>-      <item>Info</item>-      <item>Info</item>-      <item>Info</item>-      <item>InheritableThreadLocal</item>-      <item>InitialContext</item>-      <item>InitialContextFactory</item>-      <item>InitialContextFactoryBuilder</item>-      <item>InitialDirContext</item>-      <item>InitialLdapContext</item>-      <item>InlineView</item>-      <item>InputContext</item>-      <item>InputEvent</item>-      <item>InputMap</item>-      <item>InputMapUIResource</item>-      <item>InputMethod</item>-      <item>InputMethodContext</item>-      <item>InputMethodDescriptor</item>-      <item>InputMethodEvent</item>-      <item>InputMethodHighlight</item>-      <item>InputMethodListener</item>-      <item>InputMethodRequests</item>-      <item>InputSource</item>-      <item>InputStream</item>-      <item>InputStream</item>-      <item>InputStream</item>-      <item>InputStreamReader</item>-      <item>InputSubset</item>-      <item>InputVerifier</item>-      <item>InsertBreakAction</item>-      <item>InsertContentAction</item>-      <item>InsertHTMLTextAction</item>-      <item>InsertTabAction</item>-      <item>Insets</item>-      <item>InsetsUIResource</item>-      <item>InstantiationError</item>-      <item>InstantiationException</item>-      <item>Instrument</item>-      <item>InsufficientResourcesException</item>-      <item>IntBuffer</item>-      <item>IntHolder</item>-      <item>Integer</item>-      <item>IntegerSyntax</item>-      <item>Interceptor</item>-      <item>InterceptorOperations</item>-      <item>InternalError</item>-      <item>InternalFrameAdapter</item>-      <item>InternalFrameBorder</item>-      <item>InternalFrameEvent</item>-      <item>InternalFrameFocusTraversalPolicy</item>-      <item>InternalFrameListener</item>-      <item>InternalFrameUI</item>-      <item>InternationalFormatter</item>-      <item>InterruptedException</item>-      <item>InterruptedIOException</item>-      <item>InterruptedNamingException</item>-      <item>InterruptibleChannel</item>-      <item>IntrospectionException</item>-      <item>Introspector</item>-      <item>Invalid</item>-      <item>InvalidAddress</item>-      <item>InvalidAddressHelper</item>-      <item>InvalidAddressHolder</item>-      <item>InvalidAlgorithmParameterException</item>-      <item>InvalidAttributeIdentifierException</item>-      <item>InvalidAttributeValueException</item>-      <item>InvalidAttributesException</item>-      <item>InvalidClassException</item>-      <item>InvalidDnDOperationException</item>-      <item>InvalidKeyException</item>-      <item>InvalidKeySpecException</item>-      <item>InvalidMarkException</item>-      <item>InvalidMidiDataException</item>-      <item>InvalidName</item>-      <item>InvalidName</item>-      <item>InvalidName</item>-      <item>InvalidNameException</item>-      <item>InvalidNameHelper</item>-      <item>InvalidNameHelper</item>-      <item>InvalidNameHolder</item>-      <item>InvalidObjectException</item>-      <item>InvalidParameterException</item>-      <item>InvalidParameterSpecException</item>-      <item>InvalidPolicy</item>-      <item>InvalidPolicyHelper</item>-      <item>InvalidPreferencesFormatException</item>-      <item>InvalidSearchControlsException</item>-      <item>InvalidSearchFilterException</item>-      <item>InvalidSeq</item>-      <item>InvalidSlot</item>-      <item>InvalidSlotHelper</item>-      <item>InvalidTransactionException</item>-      <item>InvalidTypeForEncoding</item>-      <item>InvalidTypeForEncodingHelper</item>-      <item>InvalidValue</item>-      <item>InvalidValue</item>-      <item>InvalidValueHelper</item>-      <item>InvocationEvent</item>-      <item>InvocationHandler</item>-      <item>InvocationTargetException</item>-      <item>InvokeHandler</item>-      <item>IstringHelper</item>-      <item>ItalicAction</item>-      <item>ItemEvent</item>-      <item>ItemListener</item>-      <item>ItemSelectable</item>-      <item>Iterator</item>-      <item>Iterator</item>-      <item>IvParameterSpec</item>-      <item>JApplet</item>-      <item>JButton</item>-      <item>JCheckBox</item>-      <item>JCheckBoxMenuItem</item>-      <item>JColorChooser</item>-      <item>JComboBox</item>-      <item>JComponent</item>-      <item>JDesktopIcon</item>-      <item>JDesktopPane</item>-      <item>JDialog</item>-      <item>JEditorPane</item>-      <item>JFileChooser</item>-      <item>JFormattedTextField</item>-      <item>JFrame</item>-      <item>JIS</item>-      <item>JInternalFrame</item>-      <item>JLabel</item>-      <item>JLayeredPane</item>-      <item>JList</item>-      <item>JMenu</item>-      <item>JMenuBar</item>-      <item>JMenuItem</item>-      <item>JOptionPane</item>-      <item>JPEGHuffmanTable</item>-      <item>JPEGImageReadParam</item>-      <item>JPEGImageWriteParam</item>-      <item>JPEGQTable</item>-      <item>JPanel</item>-      <item>JPasswordField</item>-      <item>JPopupMenu</item>-      <item>JProgressBar</item>-      <item>JRadioButton</item>-      <item>JRadioButtonMenuItem</item>-      <item>JRootPane</item>-      <item>JScrollBar</item>-      <item>JScrollPane</item>-      <item>JSeparator</item>-      <item>JSlider</item>-      <item>JSpinner</item>-      <item>JSplitPane</item>-      <item>JTabbedPane</item>-      <item>JTable</item>-      <item>JTableHeader</item>-      <item>JTextArea</item>-      <item>JTextComponent</item>-      <item>JTextField</item>-      <item>JTextPane</item>-      <item>JToggleButton</item>-      <item>JToolBar</item>-      <item>JToolTip</item>-      <item>JTree</item>-      <item>JViewport</item>-      <item>JWindow</item>-      <item>JarEntry</item>-      <item>JarException</item>-      <item>JarFile</item>-      <item>JarInputStream</item>-      <item>JarOutputStream</item>-      <item>JarURLConnection</item>-      <item>JobAttributes</item>-      <item>JobHoldUntil</item>-      <item>JobImpressions</item>-      <item>JobImpressionsCompleted</item>-      <item>JobImpressionsSupported</item>-      <item>JobKOctets</item>-      <item>JobKOctetsProcessed</item>-      <item>JobKOctetsSupported</item>-      <item>JobMediaSheets</item>-      <item>JobMediaSheetsCompleted</item>-      <item>JobMediaSheetsSupported</item>-      <item>JobMessageFromOperator</item>-      <item>JobName</item>-      <item>JobOriginatingUserName</item>-      <item>JobPriority</item>-      <item>JobPrioritySupported</item>-      <item>JobSheets</item>-      <item>JobState</item>-      <item>JobStateReason</item>-      <item>JobStateReasons</item>-      <item>KerberosKey</item>-      <item>KerberosPrincipal</item>-      <item>KerberosTicket</item>-      <item>Kernel</item>-      <item>Key</item>-      <item>Key</item>-      <item>KeyAdapter</item>-      <item>KeyAgreement</item>-      <item>KeyAgreementSpi</item>-      <item>KeyBinding</item>-      <item>KeyEvent</item>-      <item>KeyEventDispatcher</item>-      <item>KeyEventPostProcessor</item>-      <item>KeyException</item>-      <item>KeyFactory</item>-      <item>KeyFactorySpi</item>-      <item>KeyGenerator</item>-      <item>KeyGeneratorSpi</item>-      <item>KeyListener</item>-      <item>KeyManagementException</item>-      <item>KeyManager</item>-      <item>KeyManagerFactory</item>-      <item>KeyManagerFactorySpi</item>-      <item>KeyPair</item>-      <item>KeyPairGenerator</item>-      <item>KeyPairGeneratorSpi</item>-      <item>KeySelectionManager</item>-      <item>KeySpec</item>-      <item>KeyStore</item>-      <item>KeyStoreException</item>-      <item>KeyStoreSpi</item>-      <item>KeyStroke</item>-      <item>KeyboardFocusManager</item>-      <item>Keymap</item>-      <item>LDAPCertStoreParameters</item>-      <item>LIFESPAN_POLICY_ID</item>-      <item>LOCATION_FORWARD</item>-      <item>Label</item>-      <item>LabelUI</item>-      <item>LabelView</item>-      <item>LanguageCallback</item>-      <item>LastOwnerException</item>-      <item>LayerPainter</item>-      <item>LayeredHighlighter</item>-      <item>LayoutFocusTraversalPolicy</item>-      <item>LayoutManager</item>-      <item>LayoutManager2</item>-      <item>LayoutQueue</item>-      <item>LazyInputMap</item>-      <item>LazyValue</item>-      <item>LdapContext</item>-      <item>LdapReferralException</item>-      <item>Lease</item>-      <item>Level</item>-      <item>LexicalHandler</item>-      <item>LifespanPolicy</item>-      <item>LifespanPolicyOperations</item>-      <item>LifespanPolicyValue</item>-      <item>LimitExceededException</item>-      <item>Line</item>-      <item>Line2D</item>-      <item>LineBorder</item>-      <item>LineBorderUIResource</item>-      <item>LineBreakMeasurer</item>-      <item>LineEvent</item>-      <item>LineListener</item>-      <item>LineMetrics</item>-      <item>LineNumberInputStream</item>-      <item>LineNumberReader</item>-      <item>LineUnavailableException</item>-      <item>LinkController</item>-      <item>LinkException</item>-      <item>LinkLoopException</item>-      <item>LinkRef</item>-      <item>LinkageError</item>-      <item>LinkedHashMap</item>-      <item>LinkedHashSet</item>-      <item>LinkedList</item>-      <item>List</item>-      <item>List</item>-      <item>ListCellRenderer</item>-      <item>ListDataEvent</item>-      <item>ListDataListener</item>-      <item>ListEditor</item>-      <item>ListIterator</item>-      <item>ListModel</item>-      <item>ListPainter</item>-      <item>ListResourceBundle</item>-      <item>ListSelectionEvent</item>-      <item>ListSelectionListener</item>-      <item>ListSelectionModel</item>-      <item>ListUI</item>-      <item>ListView</item>-      <item>LoaderHandler</item>-      <item>LocalObject</item>-      <item>Locale</item>-      <item>LocateRegistry</item>-      <item>Locator</item>-      <item>LocatorImpl</item>-      <item>LogManager</item>-      <item>LogRecord</item>-      <item>LogStream</item>-      <item>Logger</item>-      <item>LoggingPermission</item>-      <item>LoginContext</item>-      <item>LoginException</item>-      <item>LoginModule</item>-      <item>LoginModuleControlFlag</item>-      <item>Long</item>-      <item>LongBuffer</item>-      <item>LongHolder</item>-      <item>LongLongSeqHelper</item>-      <item>LongLongSeqHolder</item>-      <item>LongSeqHelper</item>-      <item>LongSeqHolder</item>-      <item>LookAndFeel</item>-      <item>LookAndFeelInfo</item>-      <item>LookupOp</item>-      <item>LookupTable</item>-      <item>MARSHAL</item>-      <item>Mac</item>-      <item>MacSpi</item>-      <item>MalformedInputException</item>-      <item>MalformedLinkException</item>-      <item>MalformedURLException</item>-      <item>ManagerFactoryParameters</item>-      <item>Manifest</item>-      <item>Map</item>-      <item>MapMode</item>-      <item>MappedByteBuffer</item>-      <item>MarginBorder</item>-      <item>MarshalException</item>-      <item>MarshalledObject</item>-      <item>MaskFormatter</item>-      <item>Matcher</item>-      <item>Math</item>-      <item>MatteBorder</item>-      <item>MatteBorderUIResource</item>-      <item>Media</item>-      <item>MediaName</item>-      <item>MediaPrintableArea</item>-      <item>MediaSize</item>-      <item>MediaSizeName</item>-      <item>MediaTracker</item>-      <item>MediaTray</item>-      <item>MediaType</item>-      <item>Member</item>-      <item>MemoryCacheImageInputStream</item>-      <item>MemoryCacheImageOutputStream</item>-      <item>MemoryHandler</item>-      <item>MemoryImageSource</item>-      <item>Menu</item>-      <item>MenuBar</item>-      <item>MenuBarBorder</item>-      <item>MenuBarBorder</item>-      <item>MenuBarUI</item>-      <item>MenuComponent</item>-      <item>MenuContainer</item>-      <item>MenuDragMouseEvent</item>-      <item>MenuDragMouseListener</item>-      <item>MenuElement</item>-      <item>MenuEvent</item>-      <item>MenuItem</item>-      <item>MenuItemBorder</item>-      <item>MenuItemUI</item>-      <item>MenuKeyEvent</item>-      <item>MenuKeyListener</item>-      <item>MenuListener</item>-      <item>MenuSelectionManager</item>-      <item>MenuShortcut</item>-      <item>MessageDigest</item>-      <item>MessageDigestSpi</item>-      <item>MessageFormat</item>-      <item>MessageProp</item>-      <item>MetaEventListener</item>-      <item>MetaMessage</item>-      <item>MetalBorders</item>-      <item>MetalButtonUI</item>-      <item>MetalCheckBoxIcon</item>-      <item>MetalCheckBoxUI</item>-      <item>MetalComboBoxButton</item>-      <item>MetalComboBoxEditor</item>-      <item>MetalComboBoxIcon</item>-      <item>MetalComboBoxUI</item>-      <item>MetalDesktopIconUI</item>-      <item>MetalFileChooserUI</item>-      <item>MetalIconFactory</item>-      <item>MetalInternalFrameTitlePane</item>-      <item>MetalInternalFrameUI</item>-      <item>MetalLabelUI</item>-      <item>MetalLookAndFeel</item>-      <item>MetalPopupMenuSeparatorUI</item>-      <item>MetalProgressBarUI</item>-      <item>MetalRadioButtonUI</item>-      <item>MetalRootPaneUI</item>-      <item>MetalScrollBarUI</item>-      <item>MetalScrollButton</item>-      <item>MetalScrollPaneUI</item>-      <item>MetalSeparatorUI</item>-      <item>MetalSliderUI</item>-      <item>MetalSplitPaneUI</item>-      <item>MetalTabbedPaneUI</item>-      <item>MetalTextFieldUI</item>-      <item>MetalTheme</item>-      <item>MetalToggleButtonUI</item>-      <item>MetalToolBarUI</item>-      <item>MetalToolTipUI</item>-      <item>MetalTreeUI</item>-      <item>Method</item>-      <item>MethodDescriptor</item>-      <item>MidiChannel</item>-      <item>MidiDevice</item>-      <item>MidiDeviceProvider</item>-      <item>MidiEvent</item>-      <item>MidiFileFormat</item>-      <item>MidiFileReader</item>-      <item>MidiFileWriter</item>-      <item>MidiMessage</item>-      <item>MidiSystem</item>-      <item>MidiUnavailableException</item>-      <item>MimeTypeParseException</item>-      <item>MinimalHTMLWriter</item>-      <item>MissingResourceException</item>-      <item>Mixer</item>-      <item>MixerProvider</item>-      <item>ModificationItem</item>-      <item>Modifier</item>-      <item>MouseAdapter</item>-      <item>MouseDragGestureRecognizer</item>-      <item>MouseEvent</item>-      <item>MouseInputAdapter</item>-      <item>MouseInputListener</item>-      <item>MouseListener</item>-      <item>MouseMotionAdapter</item>-      <item>MouseMotionListener</item>-      <item>MouseWheelEvent</item>-      <item>MouseWheelListener</item>-      <item>MultiButtonUI</item>-      <item>MultiColorChooserUI</item>-      <item>MultiComboBoxUI</item>-      <item>MultiDesktopIconUI</item>-      <item>MultiDesktopPaneUI</item>-      <item>MultiDoc</item>-      <item>MultiDocPrintJob</item>-      <item>MultiDocPrintService</item>-      <item>MultiFileChooserUI</item>-      <item>MultiInternalFrameUI</item>-      <item>MultiLabelUI</item>-      <item>MultiListUI</item>-      <item>MultiLookAndFeel</item>-      <item>MultiMenuBarUI</item>-      <item>MultiMenuItemUI</item>-      <item>MultiOptionPaneUI</item>-      <item>MultiPanelUI</item>-      <item>MultiPixelPackedSampleModel</item>-      <item>MultiPopupMenuUI</item>-      <item>MultiProgressBarUI</item>-      <item>MultiRootPaneUI</item>-      <item>MultiScrollBarUI</item>-      <item>MultiScrollPaneUI</item>-      <item>MultiSeparatorUI</item>-      <item>MultiSliderUI</item>-      <item>MultiSpinnerUI</item>-      <item>MultiSplitPaneUI</item>-      <item>MultiTabbedPaneUI</item>-      <item>MultiTableHeaderUI</item>-      <item>MultiTableUI</item>-      <item>MultiTextUI</item>-      <item>MultiToolBarUI</item>-      <item>MultiToolTipUI</item>-      <item>MultiTreeUI</item>-      <item>MultiViewportUI</item>-      <item>MulticastSocket</item>-      <item>MultipleComponentProfileHelper</item>-      <item>MultipleComponentProfileHolder</item>-      <item>MultipleDocumentHandling</item>-      <item>MultipleDocumentHandlingType</item>-      <item>MultipleMaster</item>-      <item>MutableAttributeSet</item>-      <item>MutableComboBoxModel</item>-      <item>MutableTreeNode</item>-      <item>NA</item>-      <item>NO_IMPLEMENT</item>-      <item>NO_MEMORY</item>-      <item>NO_PERMISSION</item>-      <item>NO_RESOURCES</item>-      <item>NO_RESPONSE</item>-      <item>NVList</item>-      <item>Name</item>-      <item>Name</item>-      <item>NameAlreadyBoundException</item>-      <item>NameCallback</item>-      <item>NameClassPair</item>-      <item>NameComponent</item>-      <item>NameComponentHelper</item>-      <item>NameComponentHolder</item>-      <item>NameDynAnyPair</item>-      <item>NameDynAnyPairHelper</item>-      <item>NameDynAnyPairSeqHelper</item>-      <item>NameHelper</item>-      <item>NameHolder</item>-      <item>NameNotFoundException</item>-      <item>NameParser</item>-      <item>NameValuePair</item>-      <item>NameValuePair</item>-      <item>NameValuePairHelper</item>-      <item>NameValuePairHelper</item>-      <item>NameValuePairSeqHelper</item>-      <item>NamedNodeMap</item>-      <item>NamedValue</item>-      <item>NamespaceChangeListener</item>-      <item>NamespaceSupport</item>-      <item>Naming</item>-      <item>NamingContext</item>-      <item>NamingContextExt</item>-      <item>NamingContextExtHelper</item>-      <item>NamingContextExtHolder</item>-      <item>NamingContextExtOperations</item>-      <item>NamingContextExtPOA</item>-      <item>NamingContextHelper</item>-      <item>NamingContextHolder</item>-      <item>NamingContextOperations</item>-      <item>NamingContextPOA</item>-      <item>NamingEnumeration</item>-      <item>NamingEvent</item>-      <item>NamingException</item>-      <item>NamingExceptionEvent</item>-      <item>NamingListener</item>-      <item>NamingManager</item>-      <item>NamingSecurityException</item>-      <item>NavigationFilter</item>-      <item>NegativeArraySizeException</item>-      <item>NetPermission</item>-      <item>NetworkInterface</item>-      <item>NoClassDefFoundError</item>-      <item>NoConnectionPendingException</item>-      <item>NoContext</item>-      <item>NoContextHelper</item>-      <item>NoInitialContextException</item>-      <item>NoPermissionException</item>-      <item>NoRouteToHostException</item>-      <item>NoServant</item>-      <item>NoServantHelper</item>-      <item>NoSuchAlgorithmException</item>-      <item>NoSuchAttributeException</item>-      <item>NoSuchElementException</item>-      <item>NoSuchFieldError</item>-      <item>NoSuchFieldException</item>-      <item>NoSuchMethodError</item>-      <item>NoSuchMethodException</item>-      <item>NoSuchObjectException</item>-      <item>NoSuchPaddingException</item>-      <item>NoSuchProviderException</item>-      <item>Node</item>-      <item>NodeChangeEvent</item>-      <item>NodeChangeListener</item>-      <item>NodeDimensions</item>-      <item>NodeList</item>-      <item>NonReadableChannelException</item>-      <item>NonWritableChannelException</item>-      <item>NoninvertibleTransformException</item>-      <item>NotActiveException</item>-      <item>NotBoundException</item>-      <item>NotContextException</item>-      <item>NotEmpty</item>-      <item>NotEmptyHelper</item>-      <item>NotEmptyHolder</item>-      <item>NotFound</item>-      <item>NotFoundHelper</item>-      <item>NotFoundHolder</item>-      <item>NotFoundReason</item>-      <item>NotFoundReasonHelper</item>-      <item>NotFoundReasonHolder</item>-      <item>NotOwnerException</item>-      <item>NotSerializableException</item>-      <item>NotYetBoundException</item>-      <item>NotYetConnectedException</item>-      <item>Notation</item>-      <item>NullCipher</item>-      <item>NullPointerException</item>-      <item>Number</item>-      <item>NumberEditor</item>-      <item>NumberFormat</item>-      <item>NumberFormatException</item>-      <item>NumberFormatter</item>-      <item>NumberOfDocuments</item>-      <item>NumberOfInterveningJobs</item>-      <item>NumberUp</item>-      <item>NumberUpSupported</item>-      <item>NumericShaper</item>-      <item>OBJECT_NOT_EXIST</item>-      <item>OBJ_ADAPTER</item>-      <item>OMGVMCID</item>-      <item>ORB</item>-      <item>ORB</item>-      <item>ORBInitInfo</item>-      <item>ORBInitInfoOperations</item>-      <item>ORBInitializer</item>-      <item>ORBInitializerOperations</item>-      <item>ObjID</item>-      <item>Object</item>-      <item>Object</item>-      <item>ObjectAlreadyActive</item>-      <item>ObjectAlreadyActiveHelper</item>-      <item>ObjectChangeListener</item>-      <item>ObjectFactory</item>-      <item>ObjectFactoryBuilder</item>-      <item>ObjectHelper</item>-      <item>ObjectHolder</item>-      <item>ObjectIdHelper</item>-      <item>ObjectImpl</item>-      <item>ObjectImpl</item>-      <item>ObjectInput</item>-      <item>ObjectInputStream</item>-      <item>ObjectInputValidation</item>-      <item>ObjectNotActive</item>-      <item>ObjectNotActiveHelper</item>-      <item>ObjectOutput</item>-      <item>ObjectOutputStream</item>-      <item>ObjectStreamClass</item>-      <item>ObjectStreamConstants</item>-      <item>ObjectStreamException</item>-      <item>ObjectStreamField</item>-      <item>ObjectView</item>-      <item>Observable</item>-      <item>Observer</item>-      <item>OctetSeqHelper</item>-      <item>OctetSeqHolder</item>-      <item>Oid</item>-      <item>OpenType</item>-      <item>Operation</item>-      <item>OperationNotSupportedException</item>-      <item>Option</item>-      <item>OptionDialogBorder</item>-      <item>OptionPaneUI</item>-      <item>OptionalDataException</item>-      <item>OrientationRequested</item>-      <item>OrientationRequestedType</item>-      <item>OriginType</item>-      <item>Other</item>-      <item>OutOfMemoryError</item>-      <item>OutputDeviceAssigned</item>-      <item>OutputKeys</item>-      <item>OutputStream</item>-      <item>OutputStream</item>-      <item>OutputStream</item>-      <item>OutputStreamWriter</item>-      <item>OverlappingFileLockException</item>-      <item>OverlayLayout</item>-      <item>Owner</item>-      <item>PBEKey</item>-      <item>PBEKeySpec</item>-      <item>PBEParameterSpec</item>-      <item>PDLOverrideSupported</item>-      <item>PERSIST_STORE</item>-      <item>PKCS8EncodedKeySpec</item>-      <item>PKIXBuilderParameters</item>-      <item>PKIXCertPathBuilderResult</item>-      <item>PKIXCertPathChecker</item>-      <item>PKIXCertPathValidatorResult</item>-      <item>PKIXParameters</item>-      <item>POA</item>-      <item>POAHelper</item>-      <item>POAManager</item>-      <item>POAManagerOperations</item>-      <item>POAOperations</item>-      <item>PRIVATE_MEMBER</item>-      <item>PSSParameterSpec</item>-      <item>PUBLIC_MEMBER</item>-      <item>Package</item>-      <item>PackedColorModel</item>-      <item>PageAttributes</item>-      <item>PageFormat</item>-      <item>PageRanges</item>-      <item>Pageable</item>-      <item>PagesPerMinute</item>-      <item>PagesPerMinuteColor</item>-      <item>Paint</item>-      <item>PaintContext</item>-      <item>PaintEvent</item>-      <item>PaletteBorder</item>-      <item>PaletteCloseIcon</item>-      <item>Panel</item>-      <item>PanelUI</item>-      <item>Paper</item>-      <item>ParagraphAttribute</item>-      <item>ParagraphConstants</item>-      <item>ParagraphView</item>-      <item>ParagraphView</item>-      <item>Parameter</item>-      <item>ParameterBlock</item>-      <item>ParameterDescriptor</item>-      <item>ParameterMetaData</item>-      <item>ParameterMode</item>-      <item>ParameterModeHelper</item>-      <item>ParameterModeHolder</item>-      <item>ParseException</item>-      <item>ParsePosition</item>-      <item>Parser</item>-      <item>Parser</item>-      <item>Parser</item>-      <item>ParserAdapter</item>-      <item>ParserCallback</item>-      <item>ParserConfigurationException</item>-      <item>ParserDelegator</item>-      <item>ParserFactory</item>-      <item>PartialResultException</item>-      <item>PasswordAuthentication</item>-      <item>PasswordCallback</item>-      <item>PasswordView</item>-      <item>PasteAction</item>-      <item>Patch</item>-      <item>PathIterator</item>-      <item>Pattern</item>-      <item>PatternSyntaxException</item>-      <item>Permission</item>-      <item>Permission</item>-      <item>PermissionCollection</item>-      <item>Permissions</item>-      <item>PersistenceDelegate</item>-      <item>PhantomReference</item>-      <item>Pipe</item>-      <item>PipedInputStream</item>-      <item>PipedOutputStream</item>-      <item>PipedReader</item>-      <item>PipedWriter</item>-      <item>PixelGrabber</item>-      <item>PixelInterleavedSampleModel</item>-      <item>PlainDocument</item>-      <item>PlainView</item>-      <item>Point</item>-      <item>Point2D</item>-      <item>Policy</item>-      <item>Policy</item>-      <item>Policy</item>-      <item>PolicyError</item>-      <item>PolicyErrorCodeHelper</item>-      <item>PolicyErrorHelper</item>-      <item>PolicyErrorHolder</item>-      <item>PolicyFactory</item>-      <item>PolicyFactoryOperations</item>-      <item>PolicyHelper</item>-      <item>PolicyHolder</item>-      <item>PolicyListHelper</item>-      <item>PolicyListHolder</item>-      <item>PolicyNode</item>-      <item>PolicyOperations</item>-      <item>PolicyQualifierInfo</item>-      <item>PolicyTypeHelper</item>-      <item>Polygon</item>-      <item>PooledConnection</item>-      <item>Popup</item>-      <item>PopupFactory</item>-      <item>PopupMenu</item>-      <item>PopupMenuBorder</item>-      <item>PopupMenuEvent</item>-      <item>PopupMenuListener</item>-      <item>PopupMenuUI</item>-      <item>Port</item>-      <item>PortUnreachableException</item>-      <item>PortableRemoteObject</item>-      <item>PortableRemoteObjectDelegate</item>-      <item>Position</item>-      <item>PreferenceChangeEvent</item>-      <item>PreferenceChangeListener</item>-      <item>Preferences</item>-      <item>PreferencesFactory</item>-      <item>PreparedStatement</item>-      <item>PresentationDirection</item>-      <item>Principal</item>-      <item>Principal</item>-      <item>PrincipalHolder</item>-      <item>PrintEvent</item>-      <item>PrintException</item>-      <item>PrintGraphics</item>-      <item>PrintJob</item>-      <item>PrintJobAdapter</item>-      <item>PrintJobAttribute</item>-      <item>PrintJobAttributeEvent</item>-      <item>PrintJobAttributeListener</item>-      <item>PrintJobAttributeSet</item>-      <item>PrintJobEvent</item>-      <item>PrintJobListener</item>-      <item>PrintQuality</item>-      <item>PrintQualityType</item>-      <item>PrintRequestAttribute</item>-      <item>PrintRequestAttributeSet</item>-      <item>PrintService</item>-      <item>PrintServiceAttribute</item>-      <item>PrintServiceAttributeEvent</item>-      <item>PrintServiceAttributeListener</item>-      <item>PrintServiceAttributeSet</item>-      <item>PrintServiceLookup</item>-      <item>PrintStream</item>-      <item>PrintWriter</item>-      <item>Printable</item>-      <item>PrinterAbortException</item>-      <item>PrinterException</item>-      <item>PrinterGraphics</item>-      <item>PrinterIOException</item>-      <item>PrinterInfo</item>-      <item>PrinterIsAcceptingJobs</item>-      <item>PrinterJob</item>-      <item>PrinterLocation</item>-      <item>PrinterMakeAndModel</item>-      <item>PrinterMessageFromOperator</item>-      <item>PrinterMoreInfo</item>-      <item>PrinterMoreInfoManufacturer</item>-      <item>PrinterName</item>-      <item>PrinterResolution</item>-      <item>PrinterState</item>-      <item>PrinterStateReason</item>-      <item>PrinterStateReasons</item>-      <item>PrinterURI</item>-      <item>PrivateCredentialPermission</item>-      <item>PrivateKey</item>-      <item>PrivilegedAction</item>-      <item>PrivilegedActionException</item>-      <item>PrivilegedExceptionAction</item>-      <item>Process</item>-      <item>ProcessingInstruction</item>-      <item>ProfileDataException</item>-      <item>ProfileIdHelper</item>-      <item>ProgressBarUI</item>-      <item>ProgressMonitor</item>-      <item>ProgressMonitorInputStream</item>-      <item>Properties</item>-      <item>PropertyChangeEvent</item>-      <item>PropertyChangeListener</item>-      <item>PropertyChangeListenerProxy</item>-      <item>PropertyChangeSupport</item>-      <item>PropertyDescriptor</item>-      <item>PropertyEditor</item>-      <item>PropertyEditorManager</item>-      <item>PropertyEditorSupport</item>-      <item>PropertyPermission</item>-      <item>PropertyResourceBundle</item>-      <item>PropertyVetoException</item>-      <item>ProtectionDomain</item>-      <item>ProtocolException</item>-      <item>Provider</item>-      <item>ProviderException</item>-      <item>Proxy</item>-      <item>ProxyLazyValue</item>-      <item>PublicKey</item>-      <item>PushbackInputStream</item>-      <item>PushbackReader</item>-      <item>PutField</item>-      <item>QuadCurve2D</item>-      <item>QueuedJobCount</item>-      <item>RC2ParameterSpec</item>-      <item>RC5ParameterSpec</item>-      <item>READER</item>-      <item>REQUEST_PROCESSING_POLICY_ID</item>-      <item>RGBImageFilter</item>-      <item>RMIClassLoader</item>-      <item>RMIClassLoaderSpi</item>-      <item>RMIClientSocketFactory</item>-      <item>RMIFailureHandler</item>-      <item>RMISecurityException</item>-      <item>RMISecurityManager</item>-      <item>RMIServerSocketFactory</item>-      <item>RMISocketFactory</item>-      <item>RSAKey</item>-      <item>RSAKeyGenParameterSpec</item>-      <item>RSAMultiPrimePrivateCrtKey</item>-      <item>RSAMultiPrimePrivateCrtKeySpec</item>-      <item>RSAOtherPrimeInfo</item>-      <item>RSAPrivateCrtKey</item>-      <item>RSAPrivateCrtKeySpec</item>-      <item>RSAPrivateKey</item>-      <item>RSAPrivateKeySpec</item>-      <item>RSAPublicKey</item>-      <item>RSAPublicKeySpec</item>-      <item>RTFEditorKit</item>-      <item>RadioButtonBorder</item>-      <item>Random</item>-      <item>RandomAccess</item>-      <item>RandomAccessFile</item>-      <item>Raster</item>-      <item>RasterFormatException</item>-      <item>RasterOp</item>-      <item>ReadOnlyBufferException</item>-      <item>ReadableByteChannel</item>-      <item>Reader</item>-      <item>Receiver</item>-      <item>Rectangle</item>-      <item>Rectangle2D</item>-      <item>RectangularShape</item>-      <item>Ref</item>-      <item>RefAddr</item>-      <item>Reference</item>-      <item>Reference</item>-      <item>ReferenceQueue</item>-      <item>ReferenceUriSchemesSupported</item>-      <item>Referenceable</item>-      <item>ReferralException</item>-      <item>ReflectPermission</item>-      <item>RefreshFailedException</item>-      <item>Refreshable</item>-      <item>RegisterableService</item>-      <item>Registry</item>-      <item>RegistryHandler</item>-      <item>RemarshalException</item>-      <item>Remote</item>-      <item>RemoteCall</item>-      <item>RemoteException</item>-      <item>RemoteObject</item>-      <item>RemoteRef</item>-      <item>RemoteServer</item>-      <item>RemoteStub</item>-      <item>RenderContext</item>-      <item>RenderableImage</item>-      <item>RenderableImageOp</item>-      <item>RenderableImageProducer</item>-      <item>RenderedImage</item>-      <item>RenderedImageFactory</item>-      <item>Renderer</item>-      <item>RenderingHints</item>-      <item>RepaintManager</item>-      <item>ReplicateScaleFilter</item>-      <item>RepositoryIdHelper</item>-      <item>Request</item>-      <item>RequestInfo</item>-      <item>RequestInfoOperations</item>-      <item>RequestProcessingPolicy</item>-      <item>RequestProcessingPolicyOperations</item>-      <item>RequestProcessingPolicyValue</item>-      <item>RequestingUserName</item>-      <item>RescaleOp</item>-      <item>ResolutionSyntax</item>-      <item>ResolveResult</item>-      <item>Resolver</item>-      <item>ResourceBundle</item>-      <item>ResponseHandler</item>-      <item>Result</item>-      <item>Result</item>-      <item>ResultSet</item>-      <item>ResultSetMetaData</item>-      <item>ReverbType</item>-      <item>Robot</item>-      <item>RolloverButtonBorder</item>-      <item>RolloverButtonBorder</item>-      <item>RootPaneContainer</item>-      <item>RootPaneUI</item>-      <item>RoundRectangle2D</item>-      <item>RowMapper</item>-      <item>RowSet</item>-      <item>RowSetEvent</item>-      <item>RowSetInternal</item>-      <item>RowSetListener</item>-      <item>RowSetMetaData</item>-      <item>RowSetReader</item>-      <item>RowSetWriter</item>-      <item>RuleBasedCollator</item>-      <item>RunTime</item>-      <item>RunTimeOperations</item>-      <item>Runnable</item>-      <item>Runtime</item>-      <item>RuntimeException</item>-      <item>RuntimePermission</item>-      <item>SAXException</item>-      <item>SAXNotRecognizedException</item>-      <item>SAXNotSupportedException</item>-      <item>SAXParseException</item>-      <item>SAXParser</item>-      <item>SAXParserFactory</item>-      <item>SAXResult</item>-      <item>SAXSource</item>-      <item>SAXTransformerFactory</item>-      <item>SERVANT_RETENTION_POLICY_ID</item>-      <item>SERVICE_FORMATTED</item>-      <item>SQLData</item>-      <item>SQLException</item>-      <item>SQLInput</item>-      <item>SQLOutput</item>-      <item>SQLPermission</item>-      <item>SQLWarning</item>-      <item>SSLContext</item>-      <item>SSLContextSpi</item>-      <item>SSLException</item>-      <item>SSLHandshakeException</item>-      <item>SSLKeyException</item>-      <item>SSLPeerUnverifiedException</item>-      <item>SSLPermission</item>-      <item>SSLProtocolException</item>-      <item>SSLServerSocket</item>-      <item>SSLServerSocketFactory</item>-      <item>SSLSession</item>-      <item>SSLSessionBindingEvent</item>-      <item>SSLSessionBindingListener</item>-      <item>SSLSessionContext</item>-      <item>SSLSocket</item>-      <item>SSLSocketFactory</item>-      <item>STRING</item>-      <item>SUCCESSFUL</item>-      <item>SYNC_WITH_TRANSPORT</item>-      <item>SYSTEM_EXCEPTION</item>-      <item>SampleModel</item>-      <item>Savepoint</item>-      <item>ScatteringByteChannel</item>-      <item>SchemaViolationException</item>-      <item>ScrollBarUI</item>-      <item>ScrollPane</item>-      <item>ScrollPaneAdjustable</item>-      <item>ScrollPaneBorder</item>-      <item>ScrollPaneConstants</item>-      <item>ScrollPaneLayout</item>-      <item>ScrollPaneUI</item>-      <item>Scrollable</item>-      <item>Scrollbar</item>-      <item>SealedObject</item>-      <item>SearchControls</item>-      <item>SearchResult</item>-      <item>SecretKey</item>-      <item>SecretKeyFactory</item>-      <item>SecretKeyFactorySpi</item>-      <item>SecretKeySpec</item>-      <item>SecureClassLoader</item>-      <item>SecureRandom</item>-      <item>SecureRandomSpi</item>-      <item>Security</item>-      <item>SecurityException</item>-      <item>SecurityManager</item>-      <item>SecurityPermission</item>-      <item>Segment</item>-      <item>SelectableChannel</item>-      <item>SelectionKey</item>-      <item>Selector</item>-      <item>SelectorProvider</item>-      <item>Separator</item>-      <item>Separator</item>-      <item>SeparatorUI</item>-      <item>Sequence</item>-      <item>SequenceInputStream</item>-      <item>Sequencer</item>-      <item>Serializable</item>-      <item>SerializablePermission</item>-      <item>Servant</item>-      <item>ServantActivator</item>-      <item>ServantActivatorHelper</item>-      <item>ServantActivatorOperations</item>-      <item>ServantActivatorPOA</item>-      <item>ServantAlreadyActive</item>-      <item>ServantAlreadyActiveHelper</item>-      <item>ServantLocator</item>-      <item>ServantLocatorHelper</item>-      <item>ServantLocatorOperations</item>-      <item>ServantLocatorPOA</item>-      <item>ServantManager</item>-      <item>ServantManagerOperations</item>-      <item>ServantNotActive</item>-      <item>ServantNotActiveHelper</item>-      <item>ServantObject</item>-      <item>ServantRetentionPolicy</item>-      <item>ServantRetentionPolicyOperations</item>-      <item>ServantRetentionPolicyValue</item>-      <item>ServerCloneException</item>-      <item>ServerError</item>-      <item>ServerException</item>-      <item>ServerNotActiveException</item>-      <item>ServerRef</item>-      <item>ServerRequest</item>-      <item>ServerRequestInfo</item>-      <item>ServerRequestInfoOperations</item>-      <item>ServerRequestInterceptor</item>-      <item>ServerRequestInterceptorOperations</item>-      <item>ServerRuntimeException</item>-      <item>ServerSocket</item>-      <item>ServerSocketChannel</item>-      <item>ServerSocketFactory</item>-      <item>ServiceContext</item>-      <item>ServiceContextHelper</item>-      <item>ServiceContextHolder</item>-      <item>ServiceContextListHelper</item>-      <item>ServiceContextListHolder</item>-      <item>ServiceDetail</item>-      <item>ServiceDetailHelper</item>-      <item>ServiceIdHelper</item>-      <item>ServiceInformation</item>-      <item>ServiceInformationHelper</item>-      <item>ServiceInformationHolder</item>-      <item>ServicePermission</item>-      <item>ServiceRegistry</item>-      <item>ServiceUI</item>-      <item>ServiceUIFactory</item>-      <item>ServiceUnavailableException</item>-      <item>Set</item>-      <item>SetOfIntegerSyntax</item>-      <item>SetOverrideType</item>-      <item>SetOverrideTypeHelper</item>-      <item>Severity</item>-      <item>Shape</item>-      <item>ShapeGraphicAttribute</item>-      <item>SheetCollate</item>-      <item>Short</item>-      <item>ShortBuffer</item>-      <item>ShortBufferException</item>-      <item>ShortHolder</item>-      <item>ShortLookupTable</item>-      <item>ShortMessage</item>-      <item>ShortSeqHelper</item>-      <item>ShortSeqHolder</item>-      <item>Sides</item>-      <item>SidesType</item>-      <item>Signature</item>-      <item>SignatureException</item>-      <item>SignatureSpi</item>-      <item>SignedObject</item>-      <item>Signer</item>-      <item>SimpleAttributeSet</item>-      <item>SimpleBeanInfo</item>-      <item>SimpleDateFormat</item>-      <item>SimpleDoc</item>-      <item>SimpleFormatter</item>-      <item>SimpleTimeZone</item>-      <item>SinglePixelPackedSampleModel</item>-      <item>SingleSelectionModel</item>-      <item>SinkChannel</item>-      <item>Size2DSyntax</item>-      <item>SizeLimitExceededException</item>-      <item>SizeRequirements</item>-      <item>SizeSequence</item>-      <item>Skeleton</item>-      <item>SkeletonMismatchException</item>-      <item>SkeletonNotFoundException</item>-      <item>SliderUI</item>-      <item>Socket</item>-      <item>SocketAddress</item>-      <item>SocketChannel</item>-      <item>SocketException</item>-      <item>SocketFactory</item>-      <item>SocketHandler</item>-      <item>SocketImpl</item>-      <item>SocketImplFactory</item>-      <item>SocketOptions</item>-      <item>SocketPermission</item>-      <item>SocketSecurityException</item>-      <item>SocketTimeoutException</item>-      <item>SoftBevelBorder</item>-      <item>SoftReference</item>-      <item>SortedMap</item>-      <item>SortedSet</item>-      <item>SortingFocusTraversalPolicy</item>-      <item>Soundbank</item>-      <item>SoundbankReader</item>-      <item>SoundbankResource</item>-      <item>Source</item>-      <item>SourceChannel</item>-      <item>SourceDataLine</item>-      <item>SourceLocator</item>-      <item>SpinnerDateModel</item>-      <item>SpinnerListModel</item>-      <item>SpinnerModel</item>-      <item>SpinnerNumberModel</item>-      <item>SpinnerUI</item>-      <item>SplitPaneBorder</item>-      <item>SplitPaneUI</item>-      <item>Spring</item>-      <item>SpringLayout</item>-      <item>Stack</item>-      <item>StackOverflowError</item>-      <item>StackTraceElement</item>-      <item>StartTlsRequest</item>-      <item>StartTlsResponse</item>-      <item>State</item>-      <item>StateEdit</item>-      <item>StateEditable</item>-      <item>StateFactory</item>-      <item>Statement</item>-      <item>Statement</item>-      <item>StreamCorruptedException</item>-      <item>StreamHandler</item>-      <item>StreamPrintService</item>-      <item>StreamPrintServiceFactory</item>-      <item>StreamResult</item>-      <item>StreamSource</item>-      <item>StreamTokenizer</item>-      <item>Streamable</item>-      <item>StreamableValue</item>-      <item>StrictMath</item>-      <item>String</item>-      <item>StringBuffer</item>-      <item>StringBufferInputStream</item>-      <item>StringCharacterIterator</item>-      <item>StringContent</item>-      <item>StringHolder</item>-      <item>StringIndexOutOfBoundsException</item>-      <item>StringNameHelper</item>-      <item>StringReader</item>-      <item>StringRefAddr</item>-      <item>StringSelection</item>-      <item>StringSeqHelper</item>-      <item>StringSeqHolder</item>-      <item>StringTokenizer</item>-      <item>StringValueHelper</item>-      <item>StringWriter</item>-      <item>Stroke</item>-      <item>Struct</item>-      <item>StructMember</item>-      <item>StructMemberHelper</item>-      <item>Stub</item>-      <item>StubDelegate</item>-      <item>StubNotFoundException</item>-      <item>Style</item>-      <item>StyleConstants</item>-      <item>StyleContext</item>-      <item>StyleSheet</item>-      <item>StyledDocument</item>-      <item>StyledEditorKit</item>-      <item>StyledTextAction</item>-      <item>Subject</item>-      <item>SubjectDomainCombiner</item>-      <item>Subset</item>-      <item>SupportedValuesAttribute</item>-      <item>SwingConstants</item>-      <item>SwingPropertyChangeSupport</item>-      <item>SwingUtilities</item>-      <item>SyncFailedException</item>-      <item>SyncMode</item>-      <item>SyncScopeHelper</item>-      <item>Synthesizer</item>-      <item>SysexMessage</item>-      <item>System</item>-      <item>SystemColor</item>-      <item>SystemException</item>-      <item>SystemFlavorMap</item>-      <item>TAG_ALTERNATE_IIOP_ADDRESS</item>-      <item>TAG_CODE_SETS</item>-      <item>TAG_INTERNET_IOP</item>-      <item>TAG_JAVA_CODEBASE</item>-      <item>TAG_MULTIPLE_COMPONENTS</item>-      <item>TAG_ORB_TYPE</item>-      <item>TAG_POLICIES</item>-      <item>TCKind</item>-      <item>THREAD_POLICY_ID</item>-      <item>TRANSACTION_REQUIRED</item>-      <item>TRANSACTION_ROLLEDBACK</item>-      <item>TRANSIENT</item>-      <item>TRANSPORT_RETRY</item>-      <item>TabExpander</item>-      <item>TabSet</item>-      <item>TabStop</item>-      <item>TabableView</item>-      <item>TabbedPaneUI</item>-      <item>TableCellEditor</item>-      <item>TableCellRenderer</item>-      <item>TableColumn</item>-      <item>TableColumnModel</item>-      <item>TableColumnModelEvent</item>-      <item>TableColumnModelListener</item>-      <item>TableHeaderBorder</item>-      <item>TableHeaderUI</item>-      <item>TableModel</item>-      <item>TableModelEvent</item>-      <item>TableModelListener</item>-      <item>TableUI</item>-      <item>TableView</item>-      <item>Tag</item>-      <item>TagElement</item>-      <item>TaggedComponent</item>-      <item>TaggedComponentHelper</item>-      <item>TaggedComponentHolder</item>-      <item>TaggedProfile</item>-      <item>TaggedProfileHelper</item>-      <item>TaggedProfileHolder</item>-      <item>TargetDataLine</item>-      <item>Templates</item>-      <item>TemplatesHandler</item>-      <item>Text</item>-      <item>TextAction</item>-      <item>TextArea</item>-      <item>TextAttribute</item>-      <item>TextComponent</item>-      <item>TextEvent</item>-      <item>TextField</item>-      <item>TextFieldBorder</item>-      <item>TextHitInfo</item>-      <item>TextInputCallback</item>-      <item>TextLayout</item>-      <item>TextListener</item>-      <item>TextMeasurer</item>-      <item>TextOutputCallback</item>-      <item>TextSyntax</item>-      <item>TextUI</item>-      <item>TexturePaint</item>-      <item>Thread</item>-      <item>ThreadDeath</item>-      <item>ThreadGroup</item>-      <item>ThreadLocal</item>-      <item>ThreadPolicy</item>-      <item>ThreadPolicyOperations</item>-      <item>ThreadPolicyValue</item>-      <item>Throwable</item>-      <item>Tie</item>-      <item>TileObserver</item>-      <item>Time</item>-      <item>TimeLimitExceededException</item>-      <item>TimeZone</item>-      <item>Timer</item>-      <item>Timer</item>-      <item>TimerTask</item>-      <item>Timestamp</item>-      <item>TitledBorder</item>-      <item>TitledBorderUIResource</item>-      <item>ToggleButtonBorder</item>-      <item>ToggleButtonBorder</item>-      <item>ToggleButtonModel</item>-      <item>TooManyListenersException</item>-      <item>ToolBarBorder</item>-      <item>ToolBarUI</item>-      <item>ToolTipManager</item>-      <item>ToolTipUI</item>-      <item>Toolkit</item>-      <item>Track</item>-      <item>TransactionRequiredException</item>-      <item>TransactionRolledbackException</item>-      <item>TransactionService</item>-      <item>TransferHandler</item>-      <item>Transferable</item>-      <item>TransformAttribute</item>-      <item>Transformer</item>-      <item>TransformerConfigurationException</item>-      <item>TransformerException</item>-      <item>TransformerFactory</item>-      <item>TransformerFactoryConfigurationError</item>-      <item>TransformerHandler</item>-      <item>Transmitter</item>-      <item>Transparency</item>-      <item>TreeCellEditor</item>-      <item>TreeCellRenderer</item>-      <item>TreeControlIcon</item>-      <item>TreeExpansionEvent</item>-      <item>TreeExpansionListener</item>-      <item>TreeFolderIcon</item>-      <item>TreeLeafIcon</item>-      <item>TreeMap</item>-      <item>TreeModel</item>-      <item>TreeModelEvent</item>-      <item>TreeModelListener</item>-      <item>TreeNode</item>-      <item>TreePath</item>-      <item>TreeSelectionEvent</item>-      <item>TreeSelectionListener</item>-      <item>TreeSelectionModel</item>-      <item>TreeSet</item>-      <item>TreeUI</item>-      <item>TreeWillExpandListener</item>-      <item>TrustAnchor</item>-      <item>TrustManager</item>-      <item>TrustManagerFactory</item>-      <item>TrustManagerFactorySpi</item>-      <item>Type</item>-      <item>Type</item>-      <item>Type</item>-      <item>Type</item>-      <item>Type</item>-      <item>Type</item>-      <item>Type</item>-      <item>TypeCode</item>-      <item>TypeCodeHolder</item>-      <item>TypeMismatch</item>-      <item>TypeMismatch</item>-      <item>TypeMismatch</item>-      <item>TypeMismatchHelper</item>-      <item>TypeMismatchHelper</item>-      <item>Types</item>-      <item>UID</item>-      <item>UIDefaults</item>-      <item>UIManager</item>-      <item>UIResource</item>-      <item>UIResource</item>-      <item>UIResource</item>-      <item>UIResource</item>-      <item>UIResource</item>-      <item>UIResource</item>-      <item>UIResource</item>-      <item>ULongLongSeqHelper</item>-      <item>ULongLongSeqHolder</item>-      <item>ULongSeqHelper</item>-      <item>ULongSeqHolder</item>-      <item>UNKNOWN</item>-      <item>UNSUPPORTED_POLICY</item>-      <item>UNSUPPORTED_POLICY_VALUE</item>-      <item>URI</item>-      <item>URIException</item>-      <item>URIResolver</item>-      <item>URISyntax</item>-      <item>URISyntaxException</item>-      <item>URL</item>-      <item>URL</item>-      <item>URLClassLoader</item>-      <item>URLConnection</item>-      <item>URLDecoder</item>-      <item>URLEncoder</item>-      <item>URLStreamHandler</item>-      <item>URLStreamHandlerFactory</item>-      <item>URLStringHelper</item>-      <item>USER_EXCEPTION</item>-      <item>UShortSeqHelper</item>-      <item>UShortSeqHolder</item>-      <item>UTFDataFormatException</item>-      <item>UndeclaredThrowableException</item>-      <item>UnderlineAction</item>-      <item>UndoManager</item>-      <item>UndoableEdit</item>-      <item>UndoableEditEvent</item>-      <item>UndoableEditListener</item>-      <item>UndoableEditSupport</item>-      <item>UnexpectedException</item>-      <item>UnicastRemoteObject</item>-      <item>UnicodeBlock</item>-      <item>UnionMember</item>-      <item>UnionMemberHelper</item>-      <item>UnknownEncoding</item>-      <item>UnknownEncodingHelper</item>-      <item>UnknownError</item>-      <item>UnknownException</item>-      <item>UnknownGroupException</item>-      <item>UnknownHostException</item>-      <item>UnknownHostException</item>-      <item>UnknownObjectException</item>-      <item>UnknownServiceException</item>-      <item>UnknownTag</item>-      <item>UnknownUserException</item>-      <item>UnknownUserExceptionHelper</item>-      <item>UnknownUserExceptionHolder</item>-      <item>UnmappableCharacterException</item>-      <item>UnmarshalException</item>-      <item>UnmodifiableSetException</item>-      <item>UnrecoverableKeyException</item>-      <item>Unreferenced</item>-      <item>UnresolvedAddressException</item>-      <item>UnresolvedPermission</item>-      <item>UnsatisfiedLinkError</item>-      <item>UnsolicitedNotification</item>-      <item>UnsolicitedNotificationEvent</item>-      <item>UnsolicitedNotificationListener</item>-      <item>UnsupportedAddressTypeException</item>-      <item>UnsupportedAudioFileException</item>-      <item>UnsupportedCallbackException</item>-      <item>UnsupportedCharsetException</item>-      <item>UnsupportedClassVersionError</item>-      <item>UnsupportedEncodingException</item>-      <item>UnsupportedFlavorException</item>-      <item>UnsupportedLookAndFeelException</item>-      <item>UnsupportedOperationException</item>-      <item>UserException</item>-      <item>Util</item>-      <item>UtilDelegate</item>-      <item>Utilities</item>-      <item>VMID</item>-      <item>VM_ABSTRACT</item>-      <item>VM_CUSTOM</item>-      <item>VM_NONE</item>-      <item>VM_TRUNCATABLE</item>-      <item>ValueBase</item>-      <item>ValueBaseHelper</item>-      <item>ValueBaseHolder</item>-      <item>ValueFactory</item>-      <item>ValueHandler</item>-      <item>ValueMember</item>-      <item>ValueMemberHelper</item>-      <item>VariableHeightLayoutCache</item>-      <item>Vector</item>-      <item>VerifyError</item>-      <item>VersionSpecHelper</item>-      <item>VetoableChangeListener</item>-      <item>VetoableChangeListenerProxy</item>-      <item>VetoableChangeSupport</item>-      <item>View</item>-      <item>ViewFactory</item>-      <item>ViewportLayout</item>-      <item>ViewportUI</item>-      <item>VirtualMachineError</item>-      <item>Visibility</item>-      <item>VisibilityHelper</item>-      <item>VoiceStatus</item>-      <item>Void</item>-      <item>VolatileImage</item>-      <item>WCharSeqHelper</item>-      <item>WCharSeqHolder</item>-      <item>WStringSeqHelper</item>-      <item>WStringSeqHolder</item>-      <item>WStringValueHelper</item>-      <item>WeakHashMap</item>-      <item>WeakReference</item>-      <item>Window</item>-      <item>WindowAdapter</item>-      <item>WindowConstants</item>-      <item>WindowEvent</item>-      <item>WindowFocusListener</item>-      <item>WindowListener</item>-      <item>WindowStateListener</item>-      <item>WrappedPlainView</item>-      <item>WritableByteChannel</item>-      <item>WritableRaster</item>-      <item>WritableRenderedImage</item>-      <item>WriteAbortedException</item>-      <item>Writer</item>-      <item>WrongAdapter</item>-      <item>WrongAdapterHelper</item>-      <item>WrongPolicy</item>-      <item>WrongPolicyHelper</item>-      <item>WrongTransaction</item>-      <item>WrongTransactionHelper</item>-      <item>WrongTransactionHolder</item>-      <item>X500Principal</item>-      <item>X500PrivateCredential</item>-      <item>X509CRL</item>-      <item>X509CRLEntry</item>-      <item>X509CRLSelector</item>-      <item>X509CertSelector</item>-      <item>X509Certificate</item>-      <item>X509Certificate</item>-      <item>X509EncodedKeySpec</item>-      <item>X509Extension</item>-      <item>X509KeyManager</item>-      <item>X509TrustManager</item>-      <item>XAConnection</item>-      <item>XADataSource</item>-      <item>XAException</item>-      <item>XAResource</item>-      <item>XMLDecoder</item>-      <item>XMLEncoder</item>-      <item>XMLFilter</item>-      <item>XMLFilterImpl</item>-      <item>XMLFormatter</item>-      <item>XMLReader</item>-      <item>XMLReaderAdapter</item>-      <item>XMLReaderFactory</item>-      <item>Xid</item>-      <item>ZipEntry</item>-      <item>ZipException</item>-      <item>ZipFile</item>-      <item>ZipInputStream</item>-      <item>ZipOutputStream</item>-      <item>ZoneView</item>-      <item>_BindingIteratorImplBase</item>-      <item>_BindingIteratorStub</item>-      <item>_DynAnyFactoryStub</item>-      <item>_DynAnyStub</item>-      <item>_DynArrayStub</item>-      <item>_DynEnumStub</item>-      <item>_DynFixedStub</item>-      <item>_DynSequenceStub</item>-      <item>_DynStructStub</item>-      <item>_DynUnionStub</item>-      <item>_DynValueStub</item>-      <item>_IDLTypeStub</item>-      <item>_NamingContextExtStub</item>-      <item>_NamingContextImplBase</item>-      <item>_NamingContextStub</item>-      <item>_PolicyStub</item>-      <item>_Remote_Stub</item>-      <item>_ServantActivatorStub</item>-      <item>_ServantLocatorStub</item>-    </list>--    <list name="java-1.4.2-keywords">-      <item>abstract</item>-      <item>assert</item>-      <item>break</item>-      <item>case</item>-      <item>catch</item>-      <item>class</item>-      <item>continue</item>-      <item>default</item>-      <item>do</item>-      <item>else</item>-      <item>extends</item>-      <item>false</item>-      <item>finally</item>-      <item>for</item>-      <item>goto</item>-      <item>if</item>-      <item>implements</item>-      <item>import</item>-      <item>instanceof</item>-      <item>interface</item>-      <item>native</item>-      <item>new</item>-      <item>null</item>-      <item>package</item>-      <item>private</item>-      <item>protected</item>-      <item>public</item>-      <item>return</item>-      <item>super</item>-      <item>strictfp</item>-      <item>switch</item>-      <item>synchronized</item>-      <item>this</item>-      <item>throws</item>-      <item>throw</item>-      <item>transient</item>-      <item>true</item>-      <item>try</item>-      <item>volatile</item>-      <item>while</item>-    </list>--    <list name="java-1.4.2-types">-      <item>boolean</item>-      <item>byte</item>-      <item>char</item>-      <item>const</item>-      <item>double</item>-      <item>final</item>-      <item>float</item>-      <item>int</item>-      <item>long</item>-      <item>short</item>-      <item>static</item>-      <item>void</item>-    </list>--    <list name="jsp-reserved-words">-      <item>and</item>-      <item>eq</item>-      <item>gt</item>-      <item>true</item>-      <item>instanceof</item>-      <item>or</item>-      <item>ne</item>-      <item>le</item>-      <item>false</item>-      <item>empty</item>-      <item>not</item>-      <item>lt</item>-      <item>ge</item>-      <item>null</item>-      <item>div</item>-      <item>mod</item>-    </list>--    <contexts>-        <context name="Normal" attribute="Normal Text" lineEndContext="#stay">-        <RegExpr String="&lt;%@\s*[a-zA-Z0-9_\.]*" attribute="Jsp Directive" context="Jsp Standard Directive"/>-        <RegExpr String="&lt;\s*jsp:(declaration|expression|scriptlet)\s*&gt;" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>-        <RegExpr String="&lt;\s*\/?s*jsp:[a-zA-Z0-9_\.]*" attribute="Jsp Directive" context="Jsp Xml Directive"/>-        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>-        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>-        <StringDetect String="&lt;!--" attribute="Html Comment" context="Html Comment"/>-        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>-        <RegExpr String="&lt;\s*\/?\s*\$?[a-zA-Z0-9_]*:\$?[a-zA-Z0-9_]*" attribute="Keyword" context="Jsp Custom Tag"/>-        <StringDetect String="&lt;![CDATA[" attribute="Normal Text" context="#stay"/>-        <StringDetect String="]]&gt;" attribute="Normal Text" context="#stay"/>-        <RegExpr String="&lt;\s*\/?\s*[a-zA-Z0-9_]*" attribute="Normal Text" context="Html Attribute"/>-      </context>--      <context name="Jsp Standard Directive" attribute="Jsp Param Name" lineEndContext="#stay">-        <Detect2Chars char="%" char1="&gt;" attribute="Jsp Directive" context="#pop"/>-        <RegExpr String="\s*=\s*" attribute="Normal Text" context="Jsp Standard Directive Value"/>-        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>-        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>-        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>-        <RegExpr String="&lt;\s*\/?\s*\$?\w*:\$?\w*" attribute="Keyword" context="Jsp Custom Tag"/>-      </context>--      <context name="Jsp Xml Directive" attribute="Jsp Param Name" lineEndContext="#stay">-        <RegExpr String="\s*\/?\s*&gt;" attribute="Jsp Directive" context="#pop"/>-        <RegExpr String="\s*=\s*" attribute="Normal Text" context="Jsp Xml Directive Value"/>-        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>-        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>-        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>-      </context>--      <context name="Jsp Comment" attribute="Jsp Comment" lineEndContext="#stay">-        <StringDetect String="--%&gt;" attribute="Jsp Comment" context="#pop"/>-      </context>--      <context name="Jsp Custom Tag" attribute="Identifier" lineEndContext="#stay">-        <RegExpr String="\/?&gt;" attribute="Keyword" context="#pop"/>-        <RegExpr String="\s*=\s*" attribute="Normal Text" context="Jsp Custom Tag Value"/>-        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>-        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>-        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>-      </context>--      <context name="Jsp Standard Directive Value" attribute="Jsp Param Value" lineEndContext="#stay">-        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>-        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>-        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>-        <DetectChar char="&quot;" attribute="Jsp Param Value" context="Jsp Double Quoted Param Value"/>-        <DetectChar char="'" attribute="Jsp Param Value" context="Jsp Single Quoted Param Value"/>-        <Detect2Chars char="%" char1="&gt;" attribute="Jsp Directive" context="#pop#pop"/>-      </context>--      <context name="Jsp Xml Directive Value" attribute="Jsp Param Value" lineEndContext="#stay">-        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>-        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>-        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>-        <DetectChar char="&quot;" attribute="Jsp Param Value" context="Jsp Double Quoted Param Value"/>-        <DetectChar char="'" attribute="Jsp Param Value" context="Jsp Single Quoted Param Value"/>-        <RegExpr String="\s*\/?\s*&gt;" attribute="Jsp Directive" context="#pop#pop"/>-      </context>--      <context name="Jsp Custom Tag Value" attribute="Normal Text" lineEndContext="#stay">-        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>-        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>-        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>-        <DetectChar char="&quot;" attribute="Types" context="Jsp Double Quoted Custom Tag Value"/>-        <DetectChar char="'" attribute="Types" context="Jsp Single Quoted Custom Tag Value"/>-        <RegExpr String="\/?&gt;" attribute="Normal Text" context="#pop#pop"/>-      </context>--      <context name="Jsp Double Quoted Param Value" attribute="Jsp Param Value" lineEndContext="#stay">-        <DetectChar char="&quot;" attribute="Jsp Param Value" context="#pop#pop"/>-        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>-        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>-        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>-      </context>--      <context name="Jsp Single Quoted Param Value" attribute="Jsp Param Value" lineEndContext="#stay">-        <DetectChar char="'" attribute="Jsp Param Value" context="#pop#pop"/>-        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>-        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>-        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>-      </context>--      <context name="Jsp Double Quoted Custom Tag Value" attribute="Types" lineEndContext="#stay">-        <DetectChar char="&quot;" attribute="Types" context="#pop#pop"/>-        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>-        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>-        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>-      </context>--      <context name="Jsp Single Quoted Custom Tag Value" attribute="Types" lineEndContext="#stay">-        <DetectChar char="'" attribute="Types" context="#pop#pop"/>-        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>-        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>-        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>-      </context>--      <context name="Jsp Scriptlet" attribute="Normal Text" lineEndContext="#stay">-        <Detect2Chars char="%" char1="&gt;" attribute="Jsp Scriptlet" context="#pop"/>-        <RegExpr String="&lt;\s*jsp:(declaration|expression|scriptlet)\s*&gt;" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>-        <keyword String="java-1.4.2-keywords" attribute="Keyword" context="#stay"/>-        <keyword String="jsp-reserved-words" attribute="Keyword" context="#stay"/>-        <keyword String="java-1.4.2-types" attribute="Types" context="#stay"/>-        <keyword String="java-1.4.2-classes" attribute="Java 1.4.2 Classes" context="#stay"/>-        <Float attribute="Float" context="Float Suffixes"/>-        <HlCOct attribute="Octal" context="#stay"/>-        <HlCHex attribute="Hex" context="#stay"/>-        <Int attribute="Decimal" context="Int Suffixes"/>-        <HlCChar attribute="Char" context="#stay"/>-        <RegExpr String="//\s*BEGIN.*$" attribute="Decimal" context="#stay" beginRegion="Region1" firstNonSpace="true"/>-        <RegExpr String="//\s*END.*$" attribute="Decimal" context="#stay" endRegion="Region1" firstNonSpace="true"/>-        <DetectChar char="&quot;" attribute="String" context="Java String"/>-        <DetectChar char="{" attribute="Normal Text" context="#stay" beginRegion="Brace1"/>-        <DetectChar char="}" attribute="Normal Text" context="#stay" endRegion="Brace1"/>-        <AnyChar String="!%&amp;()+,-&lt;=&gt;?[]^{|}~" attribute="Symbol" context="#stay"/>-        <Detect2Chars char="/" char1="/" attribute="Java Comment" context="Java Single-Line Comment"/>-        <Detect2Chars char="/" char1="*" attribute="Java Comment" context="Java Multi-Line Comment"/>-      </context>--      <context name="Float Suffixes" attribute="Float" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">-          <AnyChar String="fF" attribute="Float" context="#pop"/>-      </context>--      <context name="Int Suffixes" attribute="Decimal" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">-          <StringDetect attribute="Decimal" context="#pop" String="ULL" insensitive="true"/>-          <StringDetect attribute="Decimal" context="#pop" String="LUL" insensitive="true"/>-          <StringDetect attribute="Decimal" context="#pop" String="LLU" insensitive="true"/>-          <StringDetect attribute="Decimal" context="#pop" String="UL" insensitive="true"/>-          <StringDetect attribute="Decimal" context="#pop" String="LU" insensitive="true"/>-          <StringDetect attribute="Decimal" context="#pop" String="LL" insensitive="true"/>-          <StringDetect attribute="Decimal" context="#pop" String="U" insensitive="true"/>-          <StringDetect attribute="Decimal" context="#pop" String="L" insensitive="true"/>-      </context>--      <context name="Jsp Expression" attribute="Normal Text" lineEndContext="#stay">-        <StringDetect String="'${'" attribute="Normal Text" context="#stay"/>-        <DetectChar char="}" attribute="Jsp Scriptlet" context="#pop"/>-        <keyword String="java-1.4.2-keywords" attribute="Keyword" context="#stay"/>-        <keyword String="jsp-reserved-words" attribute="Keyword" context="#stay"/>-        <keyword String="java-1.4.2-types" attribute="Types" context="#stay"/>-        <keyword String="java-1.4.2-classes" attribute="Java 1.4.2 Classes" context="#stay"/>-        <Float attribute="Float" context="Float Suffixes"/>-        <HlCOct attribute="Octal" context="#stay"/>-        <HlCHex attribute="Hex" context="#stay"/>-        <Int attribute="Decimal" context="Int Suffixes"/>-        <HlCChar attribute="Char" context="#stay"/>-        <DetectChar char="&quot;" attribute="String" context="Java String"/>-        <AnyChar String="!%&amp;()+,-&lt;=&gt;?[]^{|}~" attribute="Symbol" context="#stay"/>-      </context>--      <context name="Java Single-Line Comment" attribute="Java Comment" lineEndContext="#pop"/>--      <context name="Java Multi-Line Comment" attribute="Java Comment" lineEndContext="#stay">-        <Detect2Chars char="*" char1="/" attribute="Java Comment" context="#pop"/>-      </context>--      <context name="Java String" attribute="String" lineEndContext="#stay">-        <Detect2Chars char="\" char1="&quot;" attribute="String" context="#stay"/>-        <DetectChar char="&quot;" attribute="String" context="#pop"/>-      </context>--      <context name="Html Attribute" attribute="Identifier" lineEndContext="#stay">-        <RegExpr String="\/?&gt;" attribute="Normal Text" context="#pop"/>-        <RegExpr String="\s*=\s*" attribute="Normal Text" context="Html Value"/>-        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>-        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>-        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>-      </context>--      <context name="Html Value" attribute="Types" lineEndContext="#stay">-        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>-        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>-        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>-        <RegExpr String="&lt;\s*\/?\s*\$?\w*:\$?\w*" attribute="Keyword" context="Jsp Custom Tag"/>-        <RegExpr String="(&quot;|&amp;quot;|&amp;#34;)" attribute="Types" context="Html Double Quoted Value"/>-        <RegExpr String="('|&amp;#39;)" attribute="Types" context="Html Single Quoted Value"/>-        <RegExpr String="\s*#?-?_?\.?[a-zA-Z0-9]*" attribute="Types" context="Html Unquoted Value"/>-        <RegExpr String="\/?&gt;" attribute="Normal Text" context="#pop#pop"/>-      </context>--      <context name="Html Double Quoted Value" attribute="Types" lineEndContext="#stay">-        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>-        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>-        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>-        <RegExpr String="&lt;\s*\/?\s*\$?\w*:\$?\w*" attribute="Keyword" context="Jsp Custom Tag"/>-        <RegExpr String="(&quot;|&amp;quot;|&amp;#34;)" attribute="Types" context="#pop#pop"/>-      </context>--      <context name="Html Single Quoted Value" attribute="Types" lineEndContext="#stay">-        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>-        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>-        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>-        <RegExpr String="&lt;\s*\/?\s*\$?\w*:\$?\w*" attribute="Keyword" context="Jsp Custom Tag"/>-        <RegExpr String="('|&amp;#39;)" attribute="Types" context="#pop#pop"/>-      </context>--      <context name="Html Unquoted Value" attribute="Types" lineEndContext="#stay">-        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>-        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>-        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>-        <RegExpr String="&lt;\s*\/?\s*\$?\w*:\$?\w*" attribute="Keyword" context="Jsp Custom Tag"/>-        <RegExpr String="\/?&gt;" attribute="Normal Text" context="#pop#pop#pop"/>-        <RegExpr String="\s+" attribute="Types" context="#pop#pop"/>-      </context>--      <context name="Html Comment" attribute="Html Comment" lineEndContext="#stay">-        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>-        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>-        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>-        <RegExpr String="\/*--&gt;" attribute="Html Comment" context="#pop"/>-      </context>--    </contexts>---    <itemDatas>-      <itemData name="Normal Text" defStyleNum="dsNormal"/>-      <itemData name="Keyword" defStyleNum="dsKeyword"/>-      <itemData name="Identifier" defStyleNum="dsOthers"/>-      <itemData name="Types" defStyleNum="dsDataType"/>-      <itemData name="String" defStyleNum="dsString"/>--      <itemData name="Html Comment" defStyleNum="dsComment"/>--      <itemData name="Decimal" defStyleNum="dsDecVal"/>-      <itemData name="Octal" defStyleNum="dsBaseN"/>-      <itemData name="Hex" defStyleNum="dsBaseN"/>-      <itemData name="Float" defStyleNum="dsFloat"/>-      <itemData name="Char" defStyleNum="dsChar"/>-      <itemData name="Symbol" defStyleNum="dsNormal"/>-      <itemData name="Java 1.4.2 Classes" defStyleNum="dsNormal" color="#0095FF" selColor="#FFFFFF" bold="1" italic="0"/>--      <itemData name="Jsp Directive" defStyleNum="dsNormal" color="#0000ff" selColor="#00ff00" bold="true" italic="true"/>-      <itemData name="Jsp Scriptlet" defStyleNum="dsNormal" color="#000000" selColor="#ffffff" bold="true" italic="false"/>-      <itemData name="Jsp Expression" defStyleNum="dsNormal" color="#000000" selColor="#ffffff" bold="true" italic="false"/>-      <itemData name="Jsp Comment" defStyleNum="dsComment"/>--      <itemData name="Jsp Param Name" defStyleNum="dsOthers"/>-      <itemData name="Jsp Param Value" defStyleNum="dsString"/>--      <itemData name="Java Comment" defStyleNum="dsComment"/>+<language version="5" kateversion="5.0" name="JSP" section="Markup" extensions="*.jsp;*.JSP" mimetype="text/html" casesensitive="false" author="Rob Martin (rob@gamepimp.com)" license="LGPL">+  <highlighting>++    <list name="jsp-reserved-words">+      <item>and</item>+      <item>eq</item>+      <item>gt</item>+      <item>true</item>+      <item>instanceof</item>+      <item>or</item>+      <item>ne</item>+      <item>le</item>+      <item>false</item>+      <item>empty</item>+      <item>not</item>+      <item>lt</item>+      <item>ge</item>+      <item>null</item>+      <item>div</item>+      <item>mod</item>+    </list>++    <contexts>+      <context name="Normal" attribute="Normal Text" lineEndContext="#stay">+        <RegExpr String="&lt;%@\s*[a-zA-Z0-9_\.]*" attribute="Jsp Directive" context="Jsp Standard Directive"/>+        <RegExpr String="&lt;\s*jsp:(declaration|expression|scriptlet)\s*&gt;" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>+        <RegExpr String="&lt;\s*\/?s*jsp:[a-zA-Z0-9_\.]*" attribute="Jsp Directive" context="Jsp Xml Directive"/>+        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>+        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>+        <StringDetect String="&lt;!--" attribute="Html Comment" context="Html Comment"/>+        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>+        <RegExpr String="&lt;\s*\/?\s*\$?[a-zA-Z0-9_]*:\$?[a-zA-Z0-9_]*" attribute="Keyword" context="Jsp Custom Tag"/>+        <StringDetect String="&lt;![CDATA[" attribute="Normal Text" context="#stay"/>+        <StringDetect String="]]&gt;" attribute="Normal Text" context="#stay"/>+        <RegExpr String="&lt;script\b" attribute="Normal Text" context="JS" beginRegion="script" />+        <RegExpr String="&lt;style\b" attribute="Normal Text" context="CSS" beginRegion="style" />+        <RegExpr String="&lt;\s*\/?\s*[a-zA-Z0-9_]*" attribute="Normal Text" context="Html Attribute"/>+      </context>++      <context name="CSS" attribute="Normal Text" lineEndContext="#stay">+        <DetectChar attribute="Normal Text" context="CSS content" char="&gt;" />+        <Detect2Chars attribute="Normal Text" context="#pop" char="/" char1="&gt;" endRegion="style" />+        <IncludeRules context="Html Attribute" />+      </context>++      <context name="CSS content" attribute="Normal Text" lineEndContext="#stay">+        <StringDetect attribute="Normal Text" context="#pop#pop" String="&lt;/style>" endRegion="style" />+        <IncludeRules context="##CSS" includeAttrib="true"/>+      </context>++      <context name="JS" attribute="Normal Text" lineEndContext="#stay">+        <DetectChar attribute="Normal Text" context="JS content" char="&gt;" />+        <Detect2Chars attribute="Normal Text" context="#pop" char="/" char1="&gt;" endRegion="script" />+        <IncludeRules context="Html Attribute" />+      </context>++      <context name="JS content" attribute="Normal Text" lineEndContext="#stay">+        <RegExpr attribute="Normal Text" context="#pop#pop!Html Attribute" String="&lt;/script\b" endRegion="script" />+        <RegExpr attribute="Jsp Comment" context="JS comment close" String="//(?=.*&lt;/script)" />+        <IncludeRules context="Normal##JavaScript" includeAttrib="true"/>+      </context>+      <context name="JS comment close" attribute="Jsp Comment" lineEndContext="#stay">+        <DetectSpaces/>+        <DetectIdentifier/>+        <StringDetect attribute="Normal Text" context="#pop#pop#pop" String="&lt;/script" endRegion="script" />+      </context>++      <context name="Jsp Standard Directive" attribute="Jsp Param Name" lineEndContext="#stay">+        <Detect2Chars char="%" char1="&gt;" attribute="Jsp Directive" context="#pop"/>+        <RegExpr String="\s*=\s*" attribute="Normal Text" context="Jsp Standard Directive Value"/>+        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>+        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>+        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>+        <RegExpr String="&lt;\s*\/?\s*\$?\w*:\$?\w*" attribute="Keyword" context="Jsp Custom Tag"/>+      </context>++      <context name="Jsp Xml Directive" attribute="Jsp Param Name" lineEndContext="#stay">+        <RegExpr String="\s*\/?\s*&gt;" attribute="Jsp Directive" context="#pop"/>+        <RegExpr String="\s*=\s*" attribute="Normal Text" context="Jsp Xml Directive Value"/>+        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>+        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>+        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>+      </context>++      <context name="Jsp Comment" attribute="Jsp Comment" lineEndContext="#stay">+        <StringDetect String="--%&gt;" attribute="Jsp Comment" context="#pop"/>+      </context>++      <context name="Jsp Custom Tag" attribute="Identifier" lineEndContext="#stay">+        <RegExpr String="\/?&gt;" attribute="Keyword" context="#pop"/>+        <RegExpr String="\s*=\s*" attribute="Normal Text" context="Jsp Custom Tag Value"/>+        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>+        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>+        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>+      </context>++      <context name="Jsp Standard Directive Value" attribute="Jsp Param Value" lineEndContext="#stay">+        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>+        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>+        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>+        <DetectChar char="&quot;" attribute="Jsp Param Value" context="Jsp Double Quoted Param Value"/>+        <DetectChar char="'" attribute="Jsp Param Value" context="Jsp Single Quoted Param Value"/>+        <Detect2Chars char="%" char1="&gt;" attribute="Jsp Directive" context="#pop#pop"/>+      </context>++      <context name="Jsp Xml Directive Value" attribute="Jsp Param Value" lineEndContext="#stay">+        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>+        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>+        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>+        <DetectChar char="&quot;" attribute="Jsp Param Value" context="Jsp Double Quoted Param Value"/>+        <DetectChar char="'" attribute="Jsp Param Value" context="Jsp Single Quoted Param Value"/>+        <RegExpr String="\s*\/?\s*&gt;" attribute="Jsp Directive" context="#pop#pop"/>+      </context>++      <context name="Jsp Custom Tag Value" attribute="Normal Text" lineEndContext="#stay">+        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>+        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>+        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>+        <DetectChar char="&quot;" attribute="Types" context="Jsp Double Quoted Custom Tag Value"/>+        <DetectChar char="'" attribute="Types" context="Jsp Single Quoted Custom Tag Value"/>+        <RegExpr String="\/?&gt;" attribute="Normal Text" context="#pop#pop"/>+      </context>++      <context name="Jsp Double Quoted Param Value" attribute="Jsp Param Value" lineEndContext="#stay">+        <DetectChar char="&quot;" attribute="Jsp Param Value" context="#pop#pop"/>+        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>+        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>+        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>+      </context>++      <context name="Jsp Single Quoted Param Value" attribute="Jsp Param Value" lineEndContext="#stay">+        <DetectChar char="'" attribute="Jsp Param Value" context="#pop#pop"/>+        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>+        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>+        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>+      </context>++      <context name="Jsp Double Quoted Custom Tag Value" attribute="Types" lineEndContext="#stay">+        <DetectChar char="&quot;" attribute="Types" context="#pop#pop"/>+        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>+        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>+        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>+      </context>++      <context name="Jsp Single Quoted Custom Tag Value" attribute="Types" lineEndContext="#stay">+        <DetectChar char="'" attribute="Types" context="#pop#pop"/>+        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>+        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>+        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>+      </context>++      <context name="Jsp Scriptlet" attribute="Normal Text" lineEndContext="#stay">+        <Detect2Chars char="%" char1="&gt;" attribute="Jsp Scriptlet" context="#pop"/>+        <RegExpr String="&lt;\s*jsp:(declaration|expression|scriptlet)\s*&gt;" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>+        <keyword String="jsp-reserved-words" attribute="Keyword" context="#stay"/>+        <IncludeRules context="##Java" includeAttrib="true"/>+      </context>++      <context name="Jsp Expression" attribute="Normal Text" lineEndContext="#stay">+        <DetectChar char="}" attribute="Jsp Expression" context="#pop"/>+        <keyword String="jsp-reserved-words" attribute="Keyword" context="#stay"/>+        <IncludeRules context="##Java" includeAttrib="true"/>+      </context>++      <context name="Html Attribute" attribute="Identifier" lineEndContext="#stay">+        <RegExpr String="\/?&gt;" attribute="Normal Text" context="#pop"/>+        <RegExpr String="\s*=\s*" attribute="Normal Text" context="Html Value"/>+        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>+        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>+        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>+      </context>++      <context name="Html Value" attribute="Types" lineEndContext="#stay">+        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>+        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>+        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>+        <RegExpr String="&lt;\s*\/?\s*\$?\w*:\$?\w*" attribute="Keyword" context="Jsp Custom Tag"/>+        <RegExpr String="(&quot;|&amp;quot;|&amp;#34;)" attribute="Types" context="Html Double Quoted Value"/>+        <RegExpr String="('|&amp;#39;)" attribute="Types" context="Html Single Quoted Value"/>+        <RegExpr String="\s*#?-?_?\.?[a-zA-Z0-9]*" attribute="Types" context="Html Unquoted Value"/>+        <RegExpr String="\/?&gt;" attribute="Normal Text" context="#pop#pop"/>+      </context>++      <context name="Html Double Quoted Value" attribute="Types" lineEndContext="#stay">+        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>+        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>+        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>+        <RegExpr String="&lt;\s*\/?\s*\$?\w*:\$?\w*" attribute="Keyword" context="Jsp Custom Tag"/>+        <RegExpr String="(&quot;|&amp;quot;|&amp;#34;)" attribute="Types" context="#pop#pop"/>+      </context>++      <context name="Html Single Quoted Value" attribute="Types" lineEndContext="#stay">+        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>+        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>+        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>+        <RegExpr String="&lt;\s*\/?\s*\$?\w*:\$?\w*" attribute="Keyword" context="Jsp Custom Tag"/>+        <RegExpr String="('|&amp;#39;)" attribute="Types" context="#pop#pop"/>+      </context>++      <context name="Html Unquoted Value" attribute="Types" lineEndContext="#stay">+        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>+        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>+        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>+        <RegExpr String="&lt;\s*\/?\s*\$?\w*:\$?\w*" attribute="Keyword" context="Jsp Custom Tag"/>+        <RegExpr String="\/?&gt;" attribute="Normal Text" context="#pop#pop#pop"/>+        <RegExpr String="\s+" attribute="Types" context="#pop#pop"/>+      </context>++      <context name="Html Comment" attribute="Html Comment" lineEndContext="#stay">+        <StringDetect String="&lt;%--" attribute="Jsp Comment" context="Jsp Comment"/>+        <RegExpr String="&lt;%(!|=)?" attribute="Jsp Scriptlet" context="Jsp Scriptlet"/>+        <Detect2Chars char="$" char1="{" attribute="Jsp Expression" context="Jsp Expression"/>+        <RegExpr String="\/*--&gt;" attribute="Html Comment" context="#pop"/>+      </context>++    </contexts>+++    <itemDatas>+      <itemData name="Normal Text" defStyleNum="dsNormal"/>+      <itemData name="Keyword" defStyleNum="dsKeyword"/>+      <itemData name="Identifier" defStyleNum="dsOthers"/>+      <itemData name="Types" defStyleNum="dsDataType"/>++      <itemData name="Html Comment" defStyleNum="dsComment"/>++      <itemData name="Jsp Directive" defStyleNum="dsBuiltIn" bold="true" italic="true"/>+      <itemData name="Jsp Scriptlet" defStyleNum="dsPreprocessor" bold="true" italic="false"/>+      <itemData name="Jsp Expression" defStyleNum="dsPreprocessor" bold="true" italic="false"/>+      <itemData name="Jsp Comment" defStyleNum="dsComment"/>++      <itemData name="Jsp Param Name" defStyleNum="dsOthers"/>+      <itemData name="Jsp Param Value" defStyleNum="dsString"/>     </itemDatas>   </highlighting> 
syntax/julia.xml view
@@ -27,9 +27,13 @@   Author: Timothy E. Holy, Washington University in St. Louis --> -<!DOCTYPE language SYSTEM "language.dtd">+<!DOCTYPE language SYSTEM "language.dtd"+[+  <!ENTITY int "[0-9]([0-9_]*[0-9])?">+  <!ENTITY hex "[0-9a-fA-F]([0-9a-fA-F_]*[0-9a-fA-F])?">+]> -<language name="Julia" section="Sources" version="5" kateversion="5.0" extensions="*.jl" casesensitive="1" priority="5" license="MIT">+<language name="Julia" section="Sources" version="7" kateversion="5.0" extensions="*.jl" casesensitive="1" priority="5" license="MIT">    <highlighting>     <list name="block_begin">@@ -46,6 +50,7 @@     </list>     <list name="block_eb">       <item>catch</item>+      <item>finally</item>       <item>else</item>       <item>elseif</item>     </list>@@ -68,6 +73,16 @@       <item>module</item>       <item>return</item>       <item>typealias</item>+      <item>importall</item>+      <item>baremodule</item>+      <item>using</item>+      <item>where</item>+      <item>new</item>+      <item>in</item>+      <item>struct</item>+      <item>ans</item>+      <!-- C Interface -->+      <item>ccall</item>     </list>     <list name="types">       <item>AbstractArray</item>@@ -128,11 +143,11 @@       <item>Task</item>       <item>Tuple</item>       <item>Type</item>-      <item>Uint</item>-      <item>Uint8</item>-      <item>Uint16</item>-      <item>Uint32</item>-      <item>Uint64</item>+      <item>UInt</item>+      <item>UInt8</item>+      <item>UInt16</item>+      <item>UInt32</item>+      <item>UInt64</item>       <item>Union</item>       <item>Unsigned</item>       <item>UTF8String</item>@@ -140,66 +155,385 @@       <item>Vector</item>       <item>Void</item>       <item>WeakRef</item>+      <!-- Essentials -->+      <item>Missing</item>+      <item>Cmd</item>+      <item>EnvDict</item>+      <item>VersionNumber</item>+      <item>ArgumentError</item>+      <item>AssertionError</item>+      <item>BoundsError</item>+      <item>CompositeException</item>+      <item>DimensionMismatch</item>+      <item>DivideError</item>+      <item>DomainError</item>+      <item>EOFError</item>+      <item>ErrorException</item>+      <item>InexactError</item>+      <item>InterruptException</item>+      <item>KeyError</item>+      <item>LoadError</item>+      <item>MethodError</item>+      <item>MissingException</item>+      <item>OutOfMemoryError</item>+      <item>ReadOnlyMemoryError</item>+      <item>OverflowError</item>+      <item>StackOverflowError</item>+      <item>SystemError</item>+      <item>TypeError</item>+      <item>UndefKeywordError</item>+      <item>UndefRefError</item>+      <item>UndefVarError</item>+      <item>StringIndexError</item>+      <item>InitError</item>+      <item>ExponentialBackOff</item>+      <item>Timer</item>+      <item>AsyncCondition</item>+      <item>ParseError</item>+      <!-- Collections and Data Structures -->+      <item>IteratorEltype</item>+      <item>AbstractRange</item>+      <item>OrdinalRange</item>+      <item>AbstractUnitRange</item>+      <item>StepRange</item>+      <item>UnitRange</item>+      <item>LinRange</item>+      <item>IdDict</item>+      <item>WeakKeyDict</item>+      <item>ImmutableDict</item>+      <item>BitSet</item>+      <item>Pair</item>+      <!-- Math -->+      <item>OneTo</item>+      <item>StepRangeLen</item>+      <item>RoundingMode</item>+      <!-- Numbers -->+      <item>AbstractFloat</item>+      <item>AbstractIrrational</item>+      <item>Float16</item>+      <item>Float32</item>+      <item>Float64</item>+      <item>BigFloat</item>+      <item>Int128</item>+      <item>UInt128</item>+      <item>BigInt</item>+      <item>ComplexF16</item>+      <item>ComplexF32</item>+      <item>ComplexF64</item>+      <item>Irrational</item>+      <item>UnionAll</item>+      <item>NamedTuple</item>+      <item>Val</item>+      <item>Vararg</item>+      <item>Some</item>+      <!-- String -->+      <item>AbstractChar</item>+      <item>SubstitutionString</item>+      <item>AbstractString</item>+      <!-- Array -->+      <item>UndefInitializer</item>+      <item>DenseArray</item>+      <item>DenseVector</item>+      <item>DenseMatrix</item>+      <item>BitArray</item>+      <item>IndexStyle</item>+      <item>IndexLinear</item>+      <item>IndexCartesian</item>+      <item>BroadcastStyle</item>+      <item>AbstractArrayStyle</item>+      <item>ArrayStyle</item>+      <item>DefaultArrayStyle</item>+      <item>Colon</item>+      <item>CartesianIndex</item>+      <item>CartesianIndices</item>+      <item>Dims</item>+      <item>LinearIndices</item>+      <item>PermutedDimsArray</item>+      <!-- Tasks -->+      <item>Condition</item>+      <item>Channel</item>+      <!-- Threads -->+      <item>Atomic</item>+      <item>AbstractLock</item>+      <item>ReentrantLock</item>+      <item>Mutex</item>+      <item>SpinLock</item>+      <item>RecursiveSpinLock</item>+      <item>Semaphore</item>+      <!-- Filesystem (Libc) -->+      <item>RawFD</item>+      <!-- I/O and Network -->+      <item>IOBuffer</item>+      <item>IOContext</item>+      <item>TextDisplay</item>+      <item>AbstractDisplay</item>+      <!-- Sort -->+      <item>PartialQuickSort</item>+      <!-- Iteration utilities -->+      <item>Stateful</item>+      <!-- Iterators -->+      <item>Pairs</item>+      <!-- C Interface -->+      <item>CFunction</item>+      <item>Ptr</item>+      <item>Ref</item>+      <item>Cchar</item>+      <item>Cuchar</item>+      <item>Cshort</item>+      <item>Cstring</item>+      <item>Cushort</item>+      <item>Cint</item>+      <item>Cuint</item>+      <item>Clong</item>+      <item>Culong</item>+      <item>Clonglong</item>+      <item>Culonglong</item>+      <item>Cintmax_t</item>+      <item>Cuintmax_t</item>+      <item>Csize_t</item>+      <item>Cssize_t</item>+      <item>Cptrdiff_t</item>+      <item>Cwchar_t</item>+      <item>Cwstring</item>+      <item>Cfloat</item>+      <item>Cdouble</item>+      <!-- C Standard Library -->+      <item>TmStruct</item>+      <!-- StackTraces -->+      <item>StackFrame</item>+      <item>StackTrace</item>+      <!-- Base64 -->+      <item>Base64EncodePipe</item>+      <item>Base64DecodePipe</item>+      <!-- Dates -->+      <item>Period</item>+      <item>CompoundPeriod</item>+      <item>Instant</item>+      <item>UTInstant</item>+      <item>TimeType</item>+      <item>DateTime</item>+      <item>Date</item>+      <item>Time</item>+      <item>DateFormat</item>+      <!-- Base.CoreLogging -->+      <item>LogLevel</item>+      <item>AbstractLogger</item>+      <item>NullLogger</item>+      <item>ConsoleLogger</item>+      <item>SimpleLogger</item>+      <!-- Mmap -->+      <item>Anonymous</item>+      <!-- Random -->+      <item>RandomDevice</item>+      <item>MersenneTwister</item>+      <!-- SharedArrays -->+      <item>SharedArray</item>+      <!-- Sockets -->+      <item>IPv4</item>+      <item>IPv6</item>+      <item>TCPSocket</item>+      <item>UDPSocket</item>+      <!-- SparseArrays -->+      <item>SparseVector</item>+      <item>SparseMatrixCSC</item>+      <!-- Others -->+      <item>AbstractChannel</item>+      <item>AbstractSet</item>+      <item>AbstractDict</item>+      <item>BitMatrix</item>+      <item>BitVector</item>+      <item>Enum</item>+      <item>CapturedException</item>+      <item>InvalidStateException</item>+      <item>ProcessFailedException</item>     </list>++    <list name="constants">+      <!-- Constants -->+      <item>nothing</item>+      <item>PROGRAM_FILE</item>+      <item>ARGS</item>+      <item>C_NULL</item>+      <item>VERSION</item>+      <item>LOAD_PATH</item>+      <item>DEPOT_PATH</item>+      <!-- Sys -->+      <item>BINDIR</item>+      <item>CPU_THREADS</item>+      <item>WORD_SIZE</item>+      <item>KERNEL</item>+      <item>ARCH</item>+      <item>MACHINE</item>+      <!-- Essentials -->+      <item>missing</item>+      <item>devnull</item>+      <item>ENV</item>+      <!-- I/O and Network -->+      <item>stdout</item>+      <item>stderr</item>+      <item>stdin</item>+      <item>open</item>+      <item>read</item>+      <item>write</item>+      <item>create</item>+      <item>truncate</item>+      <item>append</item>+      <item>ENDIAN_BOM</item>+      <!-- Numbers -->+      <item>im</item>+      <item>pi</item>+      <item>e</item>+      <item>catalan</item>+      <item>eulergamma</item>+      <item>golden</item>+      <item>Inf</item>+      <item>Inf64</item>+      <item>Inf32</item>+      <item>Inf16</item>+      <item>NaN</item>+      <item>NaN64</item>+      <item>NaN32</item>+      <item>NaN16</item>+      <!-- Math -->+      <item>RoundNearest</item>+      <item>RoundNearestTiesAway</item>+      <item>RoundNearestTiesUp</item>+      <item>RoundToZero</item>+      <item>RoundFromZero</item>+      <item>RoundUp</item>+      <item>RoundDown</item>+      <!-- Array -->+      <item>AbstractVecOrMat</item>+      <item>undef</item>+      <item>VecOrMat</item>+      <item>DenseVecOrMat</item>+      <item>StridedArray</item>+      <item>StridedVector</item>+      <item>StridedMatrix</item>+      <item>StridedVecOrMat</item>+      <!-- Sort -->+      <item>InsertionSort</item>+      <item>MergeSort</item>+      <item>QuickSort</item>+      <item>InsertionSort</item>+      <!-- Libc -->+      <item>MS_ASYNC</item>+      <item>MS_INVALIDATE</item>+      <item>MS_SYNC</item>+    </list>+    <list name="booleans">+      <item>true</item>+      <item>false</item>+    </list>+    <list name="modules">+      <item>Base</item>+      <item>Core</item>+      <item>Main</item>+      <item>Meta</item>+      <item>StackTraces</item>+      <item>Sys</item>+      <item>Libc</item>+      <item>Docs</item>+      <item>Threads</item>+      <item>Iterators</item>+      <item>Broadcast</item>+      <item>MathConstants</item>+      <item>Math</item>+      <item>Unicode</item>+      <item>Sort</item>+      <item>Base64</item>+      <item>Dates</item>+      <item>Mmap</item>+      <item>Random</item>+      <item>SharedArrays</item>+      <item>Sockets</item>+      <item>SparseArrays</item>+      <item>CoreLogging</item>+    </list>     <contexts>        <context name="_normal" attribute="Normal Text" lineEndContext="#stay"> -	<DetectSpaces />+        <DetectSpaces />          <!-- Blocks -->-        <keyword context="#stay" attribute="Keyword" String="block_begin" -beginRegion="block" />-        <keyword context="#stay" attribute="Keyword" String="block_eb" -endRegion="block" beginRegion="block" />-        <keyword context="#stay" attribute="Keyword" String="block_end" -endRegion="block" />+        <keyword context="#stay" attribute="Keyword" String="block_begin"+                 beginRegion="block" />+        <keyword context="#stay" attribute="Keyword" String="block_eb"+                 endRegion="block" beginRegion="block" />+        <keyword context="#stay" attribute="Keyword" String="block_end"+                 endRegion="block" />         <StringDetect String="#BEGIN" context="region_marker" attribute="FoldingComment" beginRegion="user_region" />         <StringDetect String="#END" context="region_marker" attribute="FoldingComment" endRegion="user_region" />          <!-- Keywords, types, and comments -->+        <RegExpr context="#stay" attribute="Keyword" String="\b(abstract|primitive)\s+type\b" />+        <RegExpr context="#stay" attribute="Keyword" String="\bmutable\s+struct\b" />         <keyword context="#stay" attribute="Keyword" String="keywords" />         <keyword context="#stay" attribute="Data Type" String="types" />+        <keyword context="#stay" attribute="Boolean" String="booleans" />+        <keyword context="#stay" attribute="Constant" String="constants" />+        <keyword context="#stay" attribute="Module" String="modules" />+        <Detect2Chars char="#" char1="=" context="block-comment" attribute="Comment" beginRegion="block-comment"/>         <DetectChar char="#" context="1-comment" attribute="Comment"/> -	<!-- Lists and arrays -->+        <!-- Lists and arrays -->         <!-- <DetectChar char="(" context="nested" beginRegion="nested" attribute="Delimiter" />         <DetectChar char="[" context="squared" beginRegion="squared" attribute="Delimiter" />         <DetectChar char="{" context="curly" beginRegion="curly" attribute="Delimiter" /> -->          <!-- Strings -->-	<DetectChar attribute="String" context="String" char="&quot;"/>+        <StringDetect attribute="String" context="Block-String" String="&quot;&quot;&quot;" beginRegion="block-string"/>+        <DetectChar attribute="String" context="String" char="&quot;"/>+        <!-- Regular expressions -->+        <StringDetect attribute="String" context="Regex-Block-String" String="r&quot;&quot;&quot;" beginRegion="block-string"/>+        <Detect2Chars attribute="String" context="Regex-String" char="r" char1="&quot;"/>+        <!-- Byte Arrays -->+        <StringDetect attribute="String" context="Block-String" String="b&quot;&quot;&quot;" beginRegion="block-string"/>+        <Detect2Chars attribute="String" context="String" char="b" char1="&quot;"/>+        <!-- Version Number -->+        <Detect2Chars attribute="String" context="String" char="v" char1="&quot;"/>+        <!-- Raw Strings -->+        <StringDetect attribute="String" context="Raw-Block-String" String="raw&quot;&quot;&quot;" beginRegion="block-string"/>+        <StringDetect attribute="String" context="Raw-String" String="raw&quot;"/>+        <!-- Documentation -->+        <StringDetect attribute="String" context="Block-String" String="doc&quot;&quot;&quot;" beginRegion="block-string"/>+        <StringDetect attribute="String" context="String" String="doc&quot;"/> +        <!-- For Running External Programs -->+        <StringDetect attribute="Command String" context="Block-Backtick-String" String="```" beginRegion="block-string"/>+        <DetectChar attribute="Command String" context="Backtick-String" char="`"/>+         <!-- Multi-character operators -->         <StringDetect context="#stay" attribute="Operator" String="..."/>-        <StringDetect context="#stay" attribute="Operator" String="::"/>-        <StringDetect context="#stay" attribute="Operator" String="&gt;&gt;&gt;"/>-        <StringDetect context="#stay" attribute="Operator" String="&gt;&gt;"/>-        <StringDetect context="#stay" attribute="Operator" String="&lt;&lt;"/>-        <StringDetect context="#stay" attribute="Operator" String="=="/>-        <StringDetect context="#stay" attribute="Operator" String="!="/>-        <StringDetect context="#stay" attribute="Operator" String="&lt;="/>-        <StringDetect context="#stay" attribute="Operator" String="&gt;="/>-        <StringDetect context="#stay" attribute="Operator" String="&amp;&amp;"/>-        <StringDetect context="#stay" attribute="Operator" String="||"/>-        <StringDetect context="#stay" attribute="Operator" String=".*"/>-        <StringDetect context="#stay" attribute="Operator" String=".^"/>-        <StringDetect context="#stay" attribute="Operator" String="./"/>-        <StringDetect context="#stay" attribute="Operator" String=".'"/>-        <StringDetect context="#stay" attribute="Operator" String="+="/>-        <StringDetect context="#stay" attribute="Operator" String="-="/>-        <StringDetect context="#stay" attribute="Operator" String="*="/>-        <StringDetect context="#stay" attribute="Operator" String="/="/>-        <StringDetect context="#stay" attribute="Operator" String="&amp;="/>-        <StringDetect context="#stay" attribute="Operator" String="|="/>-        <StringDetect context="#stay" attribute="Operator" String="$="/>+        <Detect2Chars context="#stay" attribute="Operator" char=":" char1=":"/>         <StringDetect context="#stay" attribute="Operator" String="&gt;&gt;&gt;="/>         <StringDetect context="#stay" attribute="Operator" String="&gt;&gt;="/>         <StringDetect context="#stay" attribute="Operator" String="&lt;&lt;="/>+        <StringDetect context="#stay" attribute="Operator" String="&gt;&gt;&gt;"/>+        <Detect2Chars context="#stay" attribute="Operator" char="&gt;" char1="&gt;"/>+        <Detect2Chars context="#stay" attribute="Operator" char="&lt;" char1="&lt;"/>+        <Detect2Chars context="#stay" attribute="Operator" char="=" char1="="/>+        <Detect2Chars context="#stay" attribute="Operator" char="!" char1="="/>+        <Detect2Chars context="#stay" attribute="Operator" char="&lt;" char1="="/>+        <Detect2Chars context="#stay" attribute="Operator" char="&gt;" char1="="/>+        <Detect2Chars context="#stay" attribute="Operator" char="&amp;" char1="&amp;"/>+        <Detect2Chars context="#stay" attribute="Operator" char="|" char1="|"/>+        <Detect2Chars context="#stay" attribute="Operator" char="." char1="*"/>+        <Detect2Chars context="#stay" attribute="Operator" char="." char1="^"/>+        <Detect2Chars context="#stay" attribute="Operator" char="." char1="/"/>+        <Detect2Chars context="#stay" attribute="Operator" char="." char1="'"/>+        <Detect2Chars context="#stay" attribute="Operator" char="+" char1="="/>+        <Detect2Chars context="#stay" attribute="Operator" char="-" char1="="/>+        <Detect2Chars context="#stay" attribute="Operator" char="*" char1="="/>+        <Detect2Chars context="#stay" attribute="Operator" char="/" char1="="/>+        <Detect2Chars context="#stay" attribute="Operator" char="&amp;" char1="="/>+        <Detect2Chars context="#stay" attribute="Operator" char="|" char1="="/>+        <Detect2Chars context="#stay" attribute="Operator" char="$" char1="="/>          <!-- Look-ahead for adjoint ' after variable, number literal, closing braces and .' -->         <RegExpr context="_adjoint" attribute="Variable" String="[a-zA-Z]\w*(?=')" />-        <RegExpr context="_adjoint" attribute="Float" String="(\d+(\.\d+)?|\.\d+)([eE][+-]?\d+)?(im)?(?=')" />+        <RegExpr context="_adjoint" attribute="Float" String="(&int;(\.&int;)?|\.&int;)([eEfF][+-]?\d+)?(im)?(?=')" />         <RegExpr context="_adjoint" attribute="Delimiter" String="[\)\]}](?=')" />         <RegExpr context="_adjoint" attribute="Operator" String="\.'(?=')" /> @@ -207,11 +541,17 @@         <RegExpr context="#stay" attribute="Char" String="'[^']*(''[^']*)*'(?=[^']|$)" />         <RegExpr context="#stay" attribute="Incomplete Char" String="'[^']*(''[^']*)*" /> +        <RegExpr context="#stay" attribute="Macro" String="@[a-zA-Z_]\w*" />+        <RegExpr context="#stay" attribute="Function" String="\b[A-Za-z_]\w*(?=\!?\()" />+         <!-- Identifiers, numbers and braces -->         <!-- We can't use HlCHex, Int, and Float because we need to allow the "im" at the end of complex numbers -->         <DetectIdentifier context="#stay" attribute="Variable" />-        <RegExpr context="#stay" attribute="Hex" String="0x[0-9a-fA-F]+(im)?" />-        <RegExpr context="#stay" attribute="Float" String="(\d+(\.\d+)?|\.\d+)([eE][+-]?\d+)?(im)?" />+        <RegExpr context="#stay" attribute="Float" String="0x(&hex;\.?|(&hex;)?\.&hex;)[pP][+-]?\d+(im)?"/>+        <RegExpr context="#stay" attribute="Hex" String="0x&hex;(im)?" />+        <RegExpr context="#stay" attribute="Octal" String="0o[0-7]([0-7_]*[0-7])?(im)?" />+        <RegExpr context="#stay" attribute="Binary" String="0b[01]([01_]*[01])?(im)?" />+        <RegExpr context="#stay" attribute="Float" String="(&int;(\.&int;)?|\.&int;)([eEfF][+-]?\d+)?(im)?" />         <AnyChar context="#stay" attribute="Delimiter" String="()[]{}"/>          <!-- Single-character operators -->@@ -243,26 +583,98 @@       <!-- Context entered after encountering an " (string) -->       <context attribute="String" lineEndContext="#pop" name="String">         <DetectSpaces />-        <DetectIdentifier />         <LineContinue attribute="String" context="#stay"/>         <HlCStringChar attribute="String Char" context="#stay"/>         <DetectChar attribute="String" context="#pop" char="&quot;"/>       </context>+      <context attribute="String" lineEndContext="#stay" name="Block-String">+        <DetectSpaces />+        <StringDetect attribute="String" context="#pop" String="&quot;&quot;&quot;" endRegion="block-string"/>+        <HlCStringChar attribute="String Char" context="#stay"/>+      </context>+      <!-- Raw String -->+      <context attribute="String" lineEndContext="#pop" name="Raw-String">+        <DetectSpaces />+        <LineContinue attribute="String" context="#stay"/>+        <RegExpr attribute="String Char" context="#stay" String="(\\\\)*\\&quot;"/>+        <RegExpr attribute="String Char" context="#stay" String="(\\\\)+(?=&quot;)"/>+        <DetectChar attribute="String" context="#pop" char="&quot;"/>+      </context>+      <context attribute="String" lineEndContext="#stay" name="Raw-Block-String">+        <DetectSpaces />+        <StringDetect attribute="String" context="#pop" String="&quot;&quot;&quot;" endRegion="block-string"/>+      </context>+      <!-- Command String -->+      <context attribute="Command String" lineEndContext="#pop" name="Backtick-String">+        <DetectSpaces />+        <LineContinue attribute="Command String" context="#stay"/>+        <HlCStringChar attribute="String Char" context="#stay"/>+        <DetectChar attribute="Command String" context="#pop" char="`"/>+      </context>+      <context attribute="Command String" lineEndContext="#stay" name="Block-Backtick-String">+        <DetectSpaces />+        <StringDetect attribute="Command String" context="#pop" String="```" endRegion="block-string"/>+        <HlCStringChar attribute="String Char" context="#stay"/>+      </context> +      <!-- Regular expressions -->+      <context attribute="String" lineEndContext="#pop" name="Regex-String">+        <RegExpr attribute="String" context="#pop" String="&quot;[imsx]{1,4}"/>+        <Detect2Chars attribute="Char" context="Regex-Square-Bracket" char="[" char1="^"/>+        <DetectChar attribute="Char" context="Regex-Square-Bracket" char="["/>+        <IncludeRules context="Default-Regex"/>+        <IncludeRules context="String"/>+      </context>+      <context attribute="String" lineEndContext="#stay" name="Regex-Block-String">+        <RegExpr attribute="String" context="#pop" String="&quot;{3}[imsx]{1,4}" endRegion="block-string"/>+        <Detect2Chars attribute="Char" context="Block-Regex-Square-Bracket" char="[" char1="^"/>+        <DetectChar attribute="Char" context="Block-Regex-Square-Bracket" char="["/>+        <IncludeRules context="Default-Regex"/>+        <IncludeRules context="Block-String"/>+      </context>++      <context attribute="String" lineEndContext="#pop" name="Regex-Square-Bracket">+        <LineContinue attribute="String" context="#stay"/>+        <RegExpr attribute="String Char" context="#stay" String="\\." />+        <DetectChar attribute="Char" context="#pop" char="]"/>+        <DetectChar attribute="String" context="#pop" char="&quot;" lookAhead="true"/>+      </context>+      <context attribute="String" lineEndContext="#stay" name="Block-Regex-Square-Bracket">+        <RegExpr attribute="String Char" context="#stay" String="\\." />+        <DetectChar attribute="Char" context="#pop" char="]"/>+        <StringDetect attribute="String" context="#pop" String="&quot;&quot;&quot;" lookAhead="true"/>+      </context>+      <context attribute="String" lineEndContext="#stay" name="Default-Regex">+        <RegExpr attribute="String Char" context="#stay" String="\\." />+        <Detect2Chars attribute="Char" context="#stay" char="(" char1="?"/>+        <AnyChar attribute="Char" context="#stay" String="()|"/>+        <AnyChar attribute="String Char" context="#stay" String="?+*." />+      </context>+       <!-- 1-line comment: #pop@EOL  -->       <context name="1-comment" lineEndContext="#pop" attribute="Comment">         <DetectSpaces />-        <DetectIdentifier />+        <IncludeRules context="##Alerts" />+        <IncludeRules context="##Modelines" />       </context> +      <context name="block-comment" lineEndContext="#stay" attribute="Comment">+        <DetectSpaces />+        <Detect2Chars char="=" char1="#" context="#pop" attribute="Comment" endRegion="block-comment"/>+        <IncludeRules context="##Alerts" />+        <IncludeRules context="##Modelines" />+      </context>+     </contexts>      <itemDatas>       <itemData name="Normal Text" defStyleNum="dsNormal" />       <itemData name="Variable" defStyleNum="dsNormal" />-      <itemData name="Operator" defStyleNum="dsNormal"/>+      <itemData name="Operator" defStyleNum="dsOperator"/>       <itemData name="Float" defStyleNum="dsFloat" />       <itemData name="Hex" defStyleNum="dsBaseN" />+      <itemData name="Octal" defStyleNum="dsBaseN" />+      <itemData name="Binary" defStyleNum="dsBaseN" />       <itemData name="Delimiter" defStyleNum="dsNormal" />       <itemData name="String" defStyleNum="dsString"/>       <itemData name="String Char" defStyleNum="dsSpecialChar"/>@@ -270,8 +682,14 @@       <itemData name="Incomplete Char" defStyleNum="dsChar"/>       <itemData name="Keyword" defStyleNum="dsKeyword"/>       <itemData name="Data Type" defStyleNum="dsDataType"/>+      <itemData name="Constant" defStyleNum="dsConstant"/>+      <itemData name="Boolean" defStyleNum="dsExtension"/>+      <itemData name="Macro" defStyleNum="dsPreprocessor"/>+      <itemData name="Module" defStyleNum="dsBuiltIn"/>+      <itemData name="Function" defStyleNum="dsNormal"/>+      <itemData name="Command String" defStyleNum="dsSpecialString"/>       <itemData name="Comment" defStyleNum="dsComment"/>-      <itemData name="FoldingComment" defStyleNum="dsComment" />+      <itemData name="FoldingComment" defStyleNum="dsRegionMarker" />     </itemDatas>    </highlighting>@@ -279,6 +697,7 @@   <general>     <comments>       <comment name="singleLine" start="#" />+      <comment name="multiLine" start="#=" end="=#" />     </comments>     <keywords casesensitive="1" weakDeliminator=""/>   </general>@@ -286,4 +705,4 @@ </language>  <!-- It's recommended to put the following line in the Variables field under Settings->Configure Kate->Open/Save->Modes&Filetypes -->-<!-- kate: space-indent on; indent-width 4; mixed-indent off; indent-mode cstyle; -->+<!-- kate: space-indent on; indent-width 2; mixed-indent off; indent-mode cstyle; -->
syntax/latex.xml view
@@ -1,45 +1,321 @@ <?xml version="1.0" encoding="UTF-8"?>-<!DOCTYPE language SYSTEM "language.dtd">-<language name="LaTeX" version="8" section="Markup" kateversion="5.0" priority="10" extensions="*.tex;*.ltx;*.dtx;*.sty;*.cls;*.bbx;*.cbx;*.lbx;*.tikz;*.pgf" mimetype="text/x-tex" casesensitive="1" author="Jeroen Wijnhout (Jeroen.Wijnhout@kdemail.net)+Holger Danielsson (holger.danielsson@versanet.de)+Michel Ludwig (michel.ludwig@kdemail.net)+Thomas Braun (thomas.braun@virtuell-zuhause.de)" license="LGPL" >+<!DOCTYPE language SYSTEM "language.dtd"+[+    <!ENTITY bullet "&#xd7;">+    <!ENTITY envname "[a-zA-Z]+\*?">+    <!ENTITY regionmarker "&#037;\s*(?:BEGIN|END)">+]>+<language name="LaTeX" version="11" section="Markup" kateversion="5.0" priority="10" extensions="*.tex;*.ltx;*.dtx;*.sty;*.cls;*.bbx;*.cbx;*.lbx;*.tikz;*.pgf" mimetype="text/x-tex" casesensitive="1" author="Jeroen Wijnhout (Jeroen.Wijnhout@kdemail.net)+Holger Danielsson (holger.danielsson@versanet.de)+Michel Ludwig (michel.ludwig@kdemail.net)+Thomas Braun (thomas.braun@virtuell-zuhause.de)" license="LGPL" >   <highlighting>+    <!-- NOTE: Keywords of kind "\something" do not need a delimiter before "\".+         Using a DetectChar rule with lookAhead to detect "\" at the beginning+         avoids the requirement of the delimiter in the keyword. -->+    <list name="beginEnv">+      <item>\begin</item>+    </list>++    <list name="endEnv">+      <item>\end</item>+    </list>++    <list name="Label">+      <item>\Autocite</item>+      <item>\autocite</item>+      <item>\autoref</item>+      <item>\Cite</item>+      <item>\cite</item>+      <item>\Citeauthor</item>+      <item>\citeauthor</item>+      <item>\citep</item>+      <item>\citet</item>+      <item>\citetitle</item>+      <item>\citeurl</item>+      <item>\citeyear</item>+      <item>\cref</item>+      <item>\Cref</item>+      <item>\cref*</item>+      <item>\Cref*</item>+      <item>\eqref</item>+      <item>\Footcite</item>+      <item>\footcite</item>+      <item>\footfullcite</item>+      <item>\fullcite</item>+      <item>\label</item>+      <item>\nocite</item>+      <item>\pagecite</item>+      <item>\pageref</item>+      <item>\Parencite</item>+      <item>\parencite</item>+      <item>\ref</item>+      <item>\subref</item>+      <item>\subref*</item>+      <item>\supercite</item>+      <item>\Textcite</item>+      <item>\textcite</item>+      <item>\vpageref</item>+      <item>\vref</item>+    </list>++    <list name="macroFancyLabel">+      <item>\documentclass</item>+      <item>\includegraphics</item>+      <item>\include</item>+      <item>\usepackage</item>+      <item>\bibliography</item>+      <item>\bibliographystyle</item>+    </list>++    <list name="FancyLabel">+      <item>\cites</item>+      <item>\Cites</item>+      <item>\parencites</item>+      <item>\Parencites</item>+      <item>\autocites</item>+      <item>\Autocites</item>+      <item>\supercites</item>+      <item>\footcites</item>+      <item>\Footcites</item>+    </list>++    <list name="Sectioning">+      <item>\part*</item>+      <item>\part</item>+      <item>\chapter*</item>+      <item>\chapter</item>+      <item>\section*</item>+      <item>\section</item>+      <item>\subsection*</item>+      <item>\subsection</item>+      <item>\subsubsection*</item>+      <item>\subsubsection</item>+      <item>\paragraph*</item>+      <item>\paragraph</item>+      <item>\subparagraph*</item>+      <item>\subparagraph</item>+    </list>++    <list name="SpecialCommand">+      <item>\column</item>+      <item>\definecolor</item>+      <item>\geometry</item>+      <item>\hspace*</item>+      <item>\hspace</item>+      <item>\input</item>+      <item>\newboolean</item>+      <item>\rule</item>+      <item>\setboolean</item>+      <item>\setcounter</item>+      <item>\setlength</item>+      <item>\special</item>+      <item>\textcolor</item>+      <item>\vspace*</item>+      <item>\vspace</item>+    </list>++    <list name="Footnoting">+      <item>\footnote*</item>+      <item>\footnote</item>+    </list>++    <list name="NewCommand">+      <item>\renewcommand*</item>+      <item>\renewcommand</item>+      <item>\providecommand*</item>+      <item>\providecommand</item>+      <item>\newcommand*</item>+      <item>\newcommand</item>+    </list>++    <list name="DefCommand">+      <item>\edef</item>+      <item>\gdef</item>+      <item>\xdef</item>+    </list>++    <list name="MathModeEnsure">+      <item>\ensuremath</item>+    </list>++    <list name="iffalse">+      <item>\iffalse</item>+    </list>++    <list name="iffalseend">+      <item>\fi</item>+      <item>\else</item>+    </list>++    <list name="Verb">+      <item>verb*</item>+      <item>verb</item>+      <item>Verb</item>+    </list>++    <list name="Lstinline">+      <item>lstinline</item>+    </list>++    <list name="MintParam">+      <item>mint</item>+    </list>++    <list name="ListingsEnv">+      <item>lstlisting*</item>+      <item>lstlisting</item>+    </list>++    <list name="MintedEnv">+      <item>minted*</item>+      <item>minted</item>+    </list>++    <list name="VerbatimEnv">+      <item>Verbatim*</item>+      <item>Verbatim</item>+      <item>BVerbatim*</item>+      <item>BVerbatim</item>+      <item>LVerbatim*</item>+      <item>LVerbatim</item>+      <item>verbatim*</item>+      <item>verbatim</item>+      <item>boxedverbatim*</item>+      <item>boxedverbatim</item>+    </list>++    <list name="CommentEnv">+      <item>comment*</item>+      <item>comment</item>+    </list>++    <list name="MathEnvParam">+      <item>alignat*</item>+      <item>alignat</item>+      <item>xalignat*</item>+      <item>xalignat</item>+      <item>xxalignat*</item>+      <item>xxalignat</item>+    </list>++    <list name="MathEnv">+      <item>Bmatrix*</item>+      <item>Bmatrix</item>+      <item>IEEEeqnarray*</item>+      <item>IEEEeqnarray</item>+      <item>IEEEeqnarraybox*</item>+      <item>IEEEeqnarraybox</item>+      <item>Vmatrix*</item>+      <item>Vmatrix</item>+      <item>align*</item>+      <item>align</item>+      <item>bmatrix*</item>+      <item>bmatrix</item>+      <item>cases*</item>+      <item>cases</item>+      <item>displaymath*</item>+      <item>displaymath</item>+      <item>eqnarray*</item>+      <item>eqnarray</item>+      <item>equation*</item>+      <item>equation</item>+      <item>flalign*</item>+      <item>flalign</item>+      <item>gather*</item>+      <item>gather</item>+      <item>math*</item>+      <item>math</item>+      <item>multline*</item>+      <item>multline</item>+      <item>pmatrix*</item>+      <item>pmatrix</item>+      <item>smallmatrix*</item>+      <item>smallmatrix</item>+      <item>subeqnarray*</item>+      <item>subeqnarray</item>+      <item>vmatrix*</item>+      <item>vmatrix</item>+    </list>++    <list name="TabEnv">+      <item>tabularx*</item>+      <item>tabularx</item>+      <item>tabular*</item>+      <item>tabular</item>+      <item>supertabular*</item>+      <item>supertabular</item>+      <item>mpsupertabular*</item>+      <item>mpsupertabular</item>+      <item>xtabular*</item>+      <item>xtabular</item>+      <item>mpxtabular*</item>+      <item>mpxtabular</item>+      <item>longtable*</item>+      <item>longtable</item>+    </list>++    <list name="MathModeText">+      <item>\text</item>+      <item>\textit</item>+      <item>\textbf</item>+      <item>\textmd</item>+      <item>\textsl</item>+      <item>\textsc</item>+      <item>\textrm</item>+      <item>\textsf</item>+      <item>\texttt</item>+      <item>\textup</item>+      <item>\textlf</item>+      <item>\textnormal</item>+      <item>\shortintertext</item>+      <item>\intertext</item>+      <item>\mbox</item>+      <item>\emph</item>+    </list>++    <list name="ResetHL">+      <item>\KileResetHL</item>+      <item>\KateResetHL</item>+    </list>+     <contexts>       <!-- Normal text -->       <context name="Normal Text" attribute="Normal Text" lineEndContext="#stay">-        <RegExpr String="\\begin(?=[^a-zA-Z])" attribute="Structure" context="FindBeginEnvironment" beginRegion="block" />-        <RegExpr String="\\end(?=[^a-zA-Z])" attribute="Structure" context="FindEndEnvironment" />-        <RegExpr String="\\(cite|citet|citep|parencite|autocite|Autocite|citetitle)\*(?=[^a-zA-Z])" attribute="Structure" context="Label"/>-        <RegExpr String="\\(documentclass|includegraphics|include|usepackage|bibliography|bibliographystyle)(?=[^a-zA-Z])" attribute="Builtin Macro" context="FancyLabel"/>-        <RegExpr String="\\(cites|Cites|parencites|Parencites|autocites|Autocites|supercites|footcites|Footcites)(?=[^a-zA-Z])" attribute="Structure" context="FancyLabel"/>-        <RegExpr String="\\(cite|citet|citep|nocite|Cite|parencite|Parencite|footcite|Footcite|textcite|Textcite|supercite|autocite|Autocite|citeauthor|Citeauthor|citetitle|citeyear|citeurl|nocite|fullcite|footfullcite)(?=[^a-zA-Z])" attribute="Structure" context="Label"/>-        <RegExpr String="\\(subref\*?|cref\*?|label|pageref|autoref|ref|vpageref|vref|pagecite|eqref)(?=[^a-zA-Z])" attribute="Structure" context="Label"/>-        <RegExpr String="\\(part|chapter|section|subsection|subsubsection|paragraph|subparagraph)\*?\s*(?=[\{\[])" attribute="Structure" context="Sectioning"/>-        <RegExpr String="\\(input|hspace|hspace\*|vspace|vspace\*|rule|special|setlength|newboolean|setboolean|setcounter|geometry|textcolor|definecolor|column)(?=[^a-zA-Z])" attribute="Macro" context="SpecialCommand"/>-        <RegExpr String="\\(footnote)\*?\s*(?=[\{\[])" attribute="Macro" context="Footnoting"/>-        <RegExpr String="\\(renewcommand|providenewcommand|newcommand)\*?(?=[^a-zA-Z])" attribute="Macro" context="NewCommand"/>-        <RegExpr String="\\(e|g|x)?def(?=[^a-zA-Z])" attribute="Macro" context="DefCommand"/>-        <RegExpr String="&lt;&lt;.*&gt;&gt;=" attribute="Normal Text" context="NoWeb" />-        <StringDetect String="\(" attribute="Math" context="MathMode" />-        <StringDetect String="\[" attribute="Math" context="MathModeEquation" beginRegion="mathMode" />-        <WordDetect String="\iffalse" attribute="Comment" context="Multiline Comment"/>-        <StringDetect String="\ensuremath{" attribute="Math" context="MathModeEnsure"/>-        <DetectChar char="\" attribute="Macro" context="ContrSeq"/>-        <StringDetect String="$$" attribute="Math" context="MathModeDisplay" beginRegion="mathMode" />-        <DetectChar char="$" attribute="Math" context="MathMode" />-        <RegExpr String="%\s*BEGIN.*$" attribute="Region Marker" context="#stay" beginRegion="regionMarker" firstNonSpace="true" />-        <RegExpr String="%\s*END.*$" attribute="Region Marker" context="#stay" endRegion="regionMarker" firstNonSpace="true" />+        <DetectSpaces/>+        <DetectIdentifier/>+        <DetectChar char="\" attribute="Normal Text" context="LatexMacro" lookAhead="true"/>+        <DetectChar char="$" attribute="Math" context="MathModeTex"/>+        <RegExpr String="&lt;&lt;.*&gt;&gt;=" attribute="Normal Text" context="NoWeb" column="0"/>+        <RegExpr String="&regionmarker;" attribute="Region Marker" context="RegionComment" firstNonSpace="true"/>         <DetectChar char="%" attribute="Comment" context="Comment"/>-        <DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>       </context> -        <!-- NoWeb -->-      <context name="NoWeb" attribute="Normal Text" lineEndContext="#stay" >-        <RegExpr String="^\s*@\s*" attribute="Normal Text" context="#pop" />+      <context name="LatexMacro" attribute="Normal Text" lineEndContext="#pop">+        <keyword String="beginEnv" attribute="Structure" context="#pop!FindBeginEnvironment" beginRegion="block"/>+        <keyword String="endEnv" attribute="Structure" context="#pop!FindEndEnvironment" endRegion="block"/>+        <keyword String="Label" attribute="Structure" context="#pop!Label"/>+        <keyword String="macroFancyLabel" attribute="Builtin Macro" context="#pop!FancyLabel"/>+        <keyword String="FancyLabel" attribute="Structure" context="#pop!FancyLabel"/>+        <keyword String="Sectioning" attribute="Structure" context="#pop!Sectioning"/>+        <keyword String="SpecialCommand" attribute="Macro" context="#pop!SpecialCommand"/>+        <keyword String="Footnoting" attribute="Macro" context="#pop!Footnoting"/>+        <keyword String="NewCommand" attribute="Macro" context="#pop!NewCommand"/>+        <keyword String="DefCommand" attribute="Macro" context="#pop!DefCommand"/>+        <Detect2Chars char="\" char1="(" attribute="Math" context="#pop!MathModeLatex"/>+        <Detect2Chars char="\" char1="[" attribute="Math" context="#pop!MathModeLatexEquation" beginRegion="mathMode"/>+        <keyword String="MathModeEnsure" attribute="Math" context="#pop!MathModeEnsure"/>+        <keyword String="iffalse" attribute="Comment" context="#pop!Multiline Comment"/>+        <DetectChar char="\" attribute="Macro" context="#pop!ContrSeq"/>       </context> +      <!-- NoWeb -->+      <context name="NoWeb" attribute="Normal Text" lineEndContext="#stay">+        <RegExpr String="@\s*$" attribute="Normal Text" context="#pop" column="0"/>+      </context>+       <!-- LaTeX sectioning commands -->       <context name="Sectioning" attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop">-        <RegExpr String="\[[^\]]*\]" attribute="Normal Text" context="#stay"/>-        <DetectChar char=" " attribute="Normal Text" context="#stay"/>+        <DetectSpaces/>+        <RangeDetect char="[" char1="]" attribute="Normal Text" context="#stay"/>         <DetectChar char="{" attribute="Normal Text" context="SectioningInside"/>         <DetectChar char="}" attribute="Normal Text" context="#pop"/>         <DetectChar char="%" attribute="Comment" context="Comment"/>@@ -47,36 +323,34 @@       <context name="SectioningInside" attribute="Sectioning Text" lineEndContext="#stay">         <DetectChar char="{" attribute="Normal Text" context="SectioningInside"/>         <DetectChar char="}" attribute="Normal Text" context="#pop"/>-        <StringDetect String="\(" attribute="Sectioning Math" context="SectioningMathMode" />+        <Detect2Chars char="\" char1="(" attribute="Sectioning Math" context="SectioningMathMode" />         <DetectChar char="\" attribute="Sectioning Macro" context="SectioningContrSeq"/>         <DetectChar char="$" attribute="Sectioning Math" context="SectioningMathMode" />         <DetectChar char="%" attribute="Comment" context="Comment"/>-        <DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>       </context>       <context name="SectioningContrSeq" attribute="Macro" lineEndContext="#pop">-        <DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>-        <RegExpr String="[a-zA-Z]+(\+?|\*{0,3})" attribute="Sectioning Macro" context="#pop"/>-        <RegExpr String="[^a-zA-Z]" attribute="Sectioning Macro" context="#pop" />+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>+        <RegExpr String="[a-zA-Z]+(\+?|\*{0,3})|." attribute="Sectioning Macro" context="#pop" />       </context>       <context name="SectioningMathMode" attribute="Sectioning Math" lineEndContext="#stay">-        <StringDetect String="$$" attribute="Error" context="#stay" />+        <Detect2Chars char="$" char1="$" attribute="Error" context="#stay" />         <DetectChar char="$" attribute="Sectioning Math" context="#pop" />         <Detect2Chars char="\" char1=")" attribute="Sectioning Math" context="#pop" />         <Detect2Chars char="\" char1="]" attribute="Error" context="#stay" />         <DetectChar char="\" attribute="Sectioning Macro Mathmode" context="SectioningMathContrSeq"/>         <DetectChar char="%" attribute="Comment" context="Comment"/>-        <DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>       </context>       <context name="SectioningMathContrSeq" attribute="Sectioning Macro Mathmode" lineEndContext="#pop">-        <DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>-        <RegExpr String="[a-zA-Z]+\*?" attribute="Sectioning Macro Mathmode" context="#pop"/>-        <RegExpr String="[^a-zA-Z]" attribute="Sectioning Macro Mathmode" context="#pop" />+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>+        <RegExpr String="&envname;|." attribute="Sectioning Macro Mathmode" context="#pop" />       </context>        <!-- LaTeX Footnote commands -->       <context name="Footnoting" attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop">-        <RegExpr String="\[[^\]]*\]" attribute="Normal Text" context="#stay"/>-        <DetectChar char=" " attribute="Normal Text" context="#stay"/>+        <DetectSpaces/>+        <RangeDetect char="[" char1="]" attribute="Normal Text" context="#stay"/>         <DetectChar char="{" attribute="Normal Text" context="FootnotingInside"/>         <DetectChar char="}" attribute="Normal Text" context="#pop"/>         <DetectChar char="%" attribute="Comment" context="Comment"/>@@ -84,54 +358,39 @@       <context name="FootnotingInside" attribute="Normal Text" lineEndContext="#stay">         <DetectChar char="{" attribute="Normal Text" context="FootnotingInside"/>         <DetectChar char="}" attribute="Normal Text" context="#pop"/>-        <StringDetect String="\(" attribute="Math" context="FootnotingMathMode" />-        <DetectChar char="$" attribute="Math" context="FootnotingMathMode" />-        <IncludeRules context="Normal Text" />-      </context>-      <context name="FootnotingMathMode" attribute="Math" lineEndContext="#stay">-        <StringDetect String="$$" attribute="Error" context="#stay" />-        <DetectChar char="$" attribute="Math" context="#pop" />-        <Detect2Chars char="\" char1=")" attribute="Math" context="#pop" />-        <Detect2Chars char="\" char1="]" attribute="Error" context="#stay" />-        <IncludeRules context="MathMode" />+        <IncludeRules context="Normal Text"/>       </context>        <!-- LaTeX commands \newcommand and \renewcommand -->       <context name="NewCommand" attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop">-          <RegExpr String="\s*\{\s*" attribute="Normal Text" context="LabelParameter"/>-          <RegExpr String="\s*(\[\d\](\[[^\]]*\])?)?\{" attribute="Normal Text" context="LabelParameter"/>+        <DetectSpaces/>+        <DetectChar char="{" attribute="Normal Text" context="LabelParameter"/>+        <RegExpr String="(\[\d\](\[[^\]]*\])?)?\{" attribute="Normal Text" context="LabelParameter"/>         <DetectChar char="}" attribute="Error" context="#pop"/>       </context>        <!-- LaTeX command \def -->       <context name="DefCommand" attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop">-        <RegExpr String="\s*\\[a-zA-Z]+[^\{]*\{" attribute="Normal Text" context="CommandParameterStart"/>+        <DetectSpaces/>+        <RegExpr String="\\[a-zA-Z]+[^\{]*\{" attribute="Normal Text" context="#pop!CommandParameter"/>         <DetectChar char="}" attribute="Error" context="#pop"/>       </context>        <!-- parse command argument -->-      <context name="CommandParameterStart" attribute="Normal Text" lineEndContext="#stay">-        <DetectChar char="{" attribute="Normal Text" context="CommandParameter"/>-        <DetectChar char="}" attribute="Normal Text" context="#pop#pop"/>-        <RegExpr String="\\." attribute="Normal Text" context="#stay" />-        <DetectChar char="%" attribute="Comment" context="Comment"/>-      </context>       <context name="CommandParameter" attribute="Normal Text" lineEndContext="#stay">         <DetectChar char="{" attribute="Normal Text" context="CommandParameter"/>         <DetectChar char="}" attribute="Normal Text" context="#pop"/>-        <RegExpr String="\\." attribute="Normal Text" context="#stay" />+        <RegExpr String="\\." attribute="Normal Text" context="#stay"/>         <DetectChar char="%" attribute="Comment" context="Comment"/>       </context>        <!-- LaTeX command in text mode -->       <context name="ContrSeq" attribute="Macro" lineEndContext="#pop">-        <StringDetect String="verb*" attribute="Macro" context="Verb"/>-        <RegExpr String="(Verb|verb)(?=[^a-zA-Z])" attribute="Macro" context="Verb"/>-        <RegExpr String="(lstinline)(?=[^a-zA-Z])" attribute="Macro" context="Lstinline"/>-        <RegExpr String="mint(?=[^a-zA-Z])" attribute="Macro" context="MintParam"/>-        <DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>-        <RegExpr String="[a-zA-Z@]+(\+?|\*{0,3})" attribute="Macro" context="#pop"/>-        <RegExpr String="[^a-zA-Z]" attribute="Macro" context="#pop" />+        <keyword String="Verb" attribute="Macro" context="Verb"/>+        <keyword String="Lstinline" attribute="Macro" context="Lstinline"/>+        <keyword String="MintParam" attribute="Macro" context="MintParam"/>+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>+        <RegExpr String="[a-zA-Z@]+(\+?|\*{0,3})|." attribute="Macro" context="#pop" />       </context>        <!-- \mint command with parameter-->@@ -147,92 +406,99 @@       </context>       <context name="VerbEnd" attribute="Verbatim" lineEndContext="#pop#pop#pop" dynamic="true" >         <StringDetect String="%1" attribute="Normal Text" context="#pop#pop#pop" dynamic="true" />-        <DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>         <RegExpr String="[^%1\xd7]*" attribute="Verbatim" context="#stay" dynamic="true" />       </context>        <!-- lstinline command, different from verb as it takes options -->       <context name="Lstinline" attribute="Verbatim" lineEndContext="#pop#pop" >-        <RegExpr String="\s*\[\s*" attribute="Normal Text" context="FancyLabelOption"/>-        <RegExpr String="\s*\{\s*" attribute="Normal Text" context="LstinlineParameter"/>+        <DetectSpaces/>+        <DetectChar char="[" attribute="Normal Text" context="FancyLabelOption"/>+        <DetectChar char="{" attribute="Normal Text" context="LstinlineParameter"/>         <RegExpr String="(.)" attribute="Normal Text" dynamic="true" context="LstinlineEnd" />       </context>       <context name="LstinlineEnd" attribute="Verbatim" lineEndContext="#pop#pop#pop" dynamic="true" >+        <!-- TODO DetectChar segfault -->         <StringDetect String="%1" attribute="Normal Text" context="#pop#pop#pop" dynamic="true" />-        <DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>         <RegExpr String="[^%1\xd7]*" attribute="Verbatim" context="#stay" dynamic="true" />       </context>       <context name="LstinlineParameter" attribute="Verbatim" lineEndContext="#stay">-        <RegExpr String="\s*\}\s*" attribute="Normal Text" context="#pop#pop#pop"/>+        <DetectSpaces/>+        <DetectChar char="}" attribute="Normal Text" context="#pop#pop#pop"/>       </context>        <!-- label -->       <context name="Label" attribute="Normal Text" lineEndContext="#stay">-        <RegExpr String="\s*\{\s*" attribute="Normal Text" context="LabelParameter"/>-        <RegExpr String="\s*\[\s*" attribute="Normal Text" context="LabelOption"/>-        <RegExpr String="[^\[\{]+" attribute="Error" context="#stay"/>+        <DetectSpaces/>+        <DetectChar char="{" attribute="Normal Text" context="LabelParameter"/>+        <DetectChar char="[" attribute="Normal Text" context="LabelOption"/>       </context>        <context name="LabelOption" attribute="Normal Text" lineEndContext="#stay">-        <StringDetect String="\(" attribute="Math" context="MathMode" />+        <DetectSpaces/>+        <DetectChar char="(" attribute="Math" context="MathModeTex" />         <DetectChar char="\" attribute="Macro" context="ContrSeq"/>-        <DetectChar char="$" attribute="Math" context="MathMode" />+        <DetectChar char="$" attribute="Math" context="MathModeTex" />         <DetectChar char="%" attribute="Comment" context="Comment"/>-        <DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>-        <RegExpr String="\s*\]\s*" attribute="Normal Text" context="#pop"/>+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>+        <DetectChar char="]" attribute="Normal Text" context="#pop"/>       </context> -      <context name="LabelParameter" attribute="Environment" lineEndContext="#stay">-        <DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>-        <RegExpr String="\s*\}\s*" attribute="Normal Text" context="#pop#pop"/>+      <context name="LabelParameter" attribute="Reference" lineEndContext="#stay">+        <DetectSpaces/>+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>+        <DetectChar char="}" attribute="Normal Text" context="#pop#pop"/>       </context>        <!-- labels from biblatex commands -->       <context name="FancyLabel" attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop">-              <RegExpr String="\s*\{\s*" attribute="Normal Text" context="FancyLabelParameter"/>-              <RegExpr String="\s*\[\s*" attribute="Normal Text" context="FancyLabelOption"/>-              <RegExpr String="\s*\(\s*" attribute="Normal Text" context="FancyLabelRoundBrackets"/>+        <DetectSpaces/>+        <DetectChar char="{" attribute="Normal Text" context="FancyLabelParameter"/>+        <DetectChar char="[" attribute="Normal Text" context="FancyLabelOption"/>+        <DetectChar char="(" attribute="Normal Text" context="FancyLabelRoundBrackets"/>       </context>        <context name="FancyLabelParameter" attribute="Environment" lineEndContext="#stay">-        <StringDetect String="\(" attribute="Math" context="MathMode" />+        <DetectSpaces/>+        <DetectChar char="(" attribute="Math" context="MathModeTex" />         <DetectChar char="\" attribute="Macro" context="ContrSeq"/>-        <DetectChar char="$" attribute="Math" context="MathMode" />+        <DetectChar char="$" attribute="Math" context="MathModeTex" />         <DetectChar char="%" attribute="Comment" context="Comment"/>-        <DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>-        <RegExpr String="\s*\}\s*" attribute="Normal Text" context="#pop"/>+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>+        <DetectChar char="}" attribute="Normal Text" context="#pop"/>+        <DetectChar char="{" attribute="Normal Text" context="FancyLabelParameter"/>       </context>        <context name="FancyLabelOption" attribute="Option Text" lineEndContext="#stay">-        <StringDetect String="\(" attribute="Math" context="MathMode" />-        <DetectChar char="\" attribute="Macro" context="ContrSeq"/>-        <DetectChar char="$" attribute="Math" context="MathMode" />-        <DetectChar char="%" attribute="Comment" context="Comment"/>-        <DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>-        <RegExpr String="\s*\]\s*" attribute="Normal Text" context="#pop"/>+        <IncludeRules context="LabelOption"/>       </context>        <context name="FancyLabelRoundBrackets" attribute="Normal Text" lineEndContext="#stay">-              <StringDetect String="\(" attribute="Math" context="MathMode" />-              <DetectChar char="\" attribute="Macro" context="ContrSeq"/>-              <DetectChar char="$" attribute="Math" context="MathMode" />-              <DetectChar char="%" attribute="Comment" context="Comment"/>-              <DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>-              <RegExpr String="\s*\)\s*" attribute="Normal Text" context="#pop"/>+        <DetectSpaces/>+        <Detect2Chars char="\" char1="(" attribute="Math" context="MathModeLatex" />+        <DetectChar char="\" attribute="Macro" context="ContrSeq"/>+        <DetectChar char="$" attribute="Math" context="MathModeTex" />+        <DetectChar char="%" attribute="Comment" context="Comment"/>+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>+        <DetectChar char=")" attribute="Normal Text" context="#pop"/>       </context>        <!-- Special commands -->       <context name="SpecialCommand" attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop">-              <RegExpr String="\s*\{\s*" attribute="Normal Text" context="SpecialCommandParameterOption"/>+        <DetectSpaces/>+        <DetectChar char="{" attribute="Normal Text" context="SpecialCommandParameterOption"/>       </context>        <context name="SpecialCommandParameterOption" attribute="Option Text" lineEndContext="#stay">-        <StringDetect String="\(" attribute="Math" context="MathMode" />+        <DetectSpaces/>+        <Detect2Chars char="\" char1="(" attribute="Math" context="MathModeTex" />         <DetectChar char="\" attribute="Macro" context="ContrSeq"/>-        <DetectChar char="$" attribute="Math" context="MathMode" />+        <DetectChar char="$" attribute="Math" context="MathModeTex" />         <DetectChar char="%" attribute="Comment" context="Comment"/>-        <DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>-        <RegExpr String="\s*\}\s*" attribute="Normal Text" context="#pop"/>+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>+        <DetectChar char="}" attribute="Normal Text" context="#pop"/>+        <DetectChar char="{" attribute="Normal Text" context="SpecialCommandParameterOption"/>       </context>        <!-- end of an environment -->@@ -242,306 +508,474 @@       </context>        <context name="EndEnvironment" attribute="Environment" lineEndContext="#stay">-        <RegExpr String="[a-zA-Z]" attribute="Environment" context="EndLatexEnv"/>-        <RegExpr String="\s+" attribute="Error" context="#pop"/>-        <RegExpr String="[^a-zA-Z]" attribute="Error" context="#pop"/>+        <RegExpr String="&envname;" attribute="Environment" context="LatexEnvEnd"/>+        <RegExpr String="." attribute="Error" context="#pop#pop"/>       </context> -       <context name="EndLatexEnv" attribute="Environment" lineEndContext="#stay">+      <context name="LatexEnvEnd" attribute="Environment" lineEndContext="#stay">         <DetectChar char="}" attribute="Normal Text" endRegion="block" context="#pop#pop#pop"/>-        <RegExpr String="[a-zA-Z]+(\*)?" attribute="Environment" context="#stay"/>-        <RegExpr String="\s+" attribute="Error" context="#stay"/>-        <RegExpr String="[a-zA-Z]" attribute="Error" context="#pop#pop#pop"/>+        <RegExpr String="[^}]*" attribute="Error" context="#stay"/>       </context>        <!-- start of an environment -->       <context name="FindBeginEnvironment" attribute="Normal Text" lineEndContext="#stay">+        <DetectSpaces/>         <DetectChar char="{" attribute="Normal Text" context="BeginEnvironment"/>-        <RegExpr String="\S" attribute="Normal Text" context="#pop"/>+        <RegExpr String="." attribute="Normal Text" context="#pop"/>       </context>        <!-- filter the environment name and check the type -->       <context name="BeginEnvironment" attribute="Environment" lineEndContext="#stay">-        <WordDetect String="lstlisting" attribute="Environment" context="ListingsEnvParam"/>-        <WordDetect String="minted" attribute="Environment" context="MintedEnvParam"/>-        <RegExpr String="((B|L)?Verbatim)" attribute="Environment" context="VerbatimEnvParam"/>-        <RegExpr String="(verbatim|boxedverbatim)" attribute="Environment" context="VerbatimEnv"/>-        <RegExpr String="comment" attribute="Environment" context="CommentEnv"/>-        <RegExpr String="(alignat|xalignat|xxalignat)" attribute="Environment" context="MathEnvParam"/>-        <RegExpr String="(equation|displaymath|eqnarray|subeqnarray|math|multline|gather|align|flalign|IEEEeqnarray|IEEEeqnarraybox|smallmatrix|pmatrix|bmatrix|Bmatrix|vmatrix|Vmatrix|cases)" attribute="Environment" context="MathEnv"/>-        <RegExpr String="(tabularx|tabular|supertabular|mpsupertabular|xtabular|mpxtabular|longtable)" attribute="Environment" context="TabEnv"/>-        <DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>-        <RegExpr String="[a-zA-Z]" attribute="Environment" context="LatexEnv"/>-        <RegExpr String="\s+" attribute="Error" context="#pop"/>-        <RegExpr String="[^a-zA-Z\xd7]" attribute="Error" context="#pop"/>+        <keyword String="ListingsEnv" attribute="Environment" context="ListingsEnv"/>+        <keyword String="MintedEnv" attribute="Environment" context="MintedEnv"/>+        <keyword String="VerbatimEnv" attribute="Environment" context="VerbatimEnv" lookAhead="true"/>+        <keyword String="CommentEnv" attribute="Environment" context="CommentEnv"/>+        <keyword String="MathEnvParam" attribute="Environment" context="MathEnvWithParam"/>+        <keyword String="MathEnv" attribute="Environment" context="MathEnv"/>+        <keyword String="TabEnv" attribute="Environment" context="TabEnv"/>+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>+        <RegExpr String="&envname;" attribute="Environment" context="LatexEnv"/>+        <RegExpr String="." attribute="Error" context="#pop"/>       </context>        <!-- environment type 1: normal -->-      <context name="LatexEnv" attribute="Environment" lineEndContext="#stay">+      <context name="LatexEnv" attribute="Error" lineEndContext="#stay">         <DetectChar char="}" attribute="Normal Text" context="#pop#pop#pop"/>-        <RegExpr String="[a-zA-Z]+" attribute="Environment" context="#stay"/>-        <RegExpr String="\s+" attribute="Error" context="#stay"/>-       <IncludeRules context="EnvCommon" />       </context> +      <context name="VerbatimEnv" attribute="Environment" lineEndContext="#stay">+        <WordDetect String="verbatim*" attribute="Environment" context="VerbatimEnv1"/>+        <WordDetect String="verbatim" attribute="Environment" context="VerbatimEnv1"/>+        <WordDetect String="boxedverbatim*" attribute="Environment" context="VerbatimEnv2"/>+        <WordDetect String="boxedverbatim" attribute="Environment" context="VerbatimEnv2"/>++        <WordDetect String="Verbatim*" attribute="Environment" context="VerbatimEnv3"/>+        <WordDetect String="Verbatim" attribute="Environment" context="VerbatimEnv3"/>+        <WordDetect String="BVerbatim*" attribute="Environment" context="VerbatimEnv4"/>+        <WordDetect String="BVerbatim" attribute="Environment" context="VerbatimEnv4"/>+        <WordDetect String="LVerbatim*" attribute="Environment" context="VerbatimEnv5"/>+        <WordDetect String="LVerbatim" attribute="Environment" context="VerbatimEnv5"/>+      </context>+       <!-- environment type 2: verbatim without parameter -->-      <context name="VerbatimEnv" attribute="Environment" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop#pop#pop">-        <DetectChar char="}" attribute="Normal Text" context="Verbatim"/>-        <RegExpr String="[a-zA-Z]" attribute="Environment" lookAhead="true" context="#pop"/>-        <IncludeRules context="EnvCommon" />-       </context>+      <context name="VerbatimEnv1" attribute="Error" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop#pop#pop#pop">+        <DetectChar char="}" attribute="Normal Text" context="Verbatim1"/>+      </context>+      <context name="Verbatim1" attribute="Verbatim" lineEndContext="#stay">+        <DetectSpaces/>+        <DetectIdentifier/>+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>+        <RegExpr String="\\end(?=\s*\{verbatim\*?\})" attribute="Structure" context="VerbFindEnd"/>+      </context> +      <context name="VerbatimEnv2" attribute="Error" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop#pop#pop#pop">+        <DetectChar char="}" attribute="Normal Text" context="Verbatim2"/>+      </context>+      <context name="Verbatim2" attribute="Verbatim" lineEndContext="#stay">+        <DetectSpaces/>+        <DetectIdentifier/>+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>+        <RegExpr String="\\end(?=\s*\{boxedverbatim\*?\})" attribute="Structure" context="VerbFindEnd"/>+      </context>+       <!-- environment type 3: verbatim with optional parameter -->-      <context name="VerbatimEnvParam" attribute="Normal Text" lineEndContext="#stay">-        <Detect2Chars char="}" char1="[" attribute="Normal Text" context="#stay" />-        <DetectChar char="}" attribute="Normal Text" context="Verbatim"/>-        <DetectChar char="]" attribute="Normal Text" context="Verbatim"/>+      <context name="VerbatimEnv3" attribute="Error" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop#pop#pop#pop">+        <DetectChar char="}" attribute="Normal Text" context="VerbatimEnv3Param"/>       </context>+      <context name="VerbatimEnv3Param" attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop!Verbatim3">+        <DetectSpaces/>+        <RangeDetect char="[" char1="]" attribute="Normal Text" context="#pop!Verbatim3"/>+      </context>+      <context name="Verbatim3" attribute="Verbatim" lineEndContext="#stay">+        <DetectSpaces/>+        <DetectIdentifier/>+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>+        <RegExpr String="\\end(?=\s*\{Verbatim\*?\})" attribute="Structure" context="VerbFindEnd"/>+      </context> +      <context name="VerbatimEnv4" attribute="Error" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop#pop#pop#pop">+        <DetectChar char="}" attribute="Normal Text" context="VerbatimEnv4Param"/>+      </context>+      <context name="VerbatimEnv4Param" attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop!Verbatim4">+        <DetectSpaces/>+        <RangeDetect char="[" char1="]" attribute="Normal Text" context="#pop!Verbatim4"/>+      </context>+      <context name="Verbatim4" attribute="Verbatim" lineEndContext="#stay">+        <DetectSpaces/>+        <DetectIdentifier/>+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>+        <RegExpr String="\\end(?=\s*\{BVerbatim\*?\})" attribute="Structure" context="VerbFindEnd"/>+      </context>++      <context name="VerbatimEnv5" attribute="Error" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop#pop#pop#pop">+        <DetectChar char="}" attribute="Normal Text" context="VerbatimEnv5Param"/>+      </context>+      <context name="VerbatimEnv5Param" attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop!Verbatim5">+        <DetectSpaces/>+        <RangeDetect char="[" char1="]" attribute="Normal Text" context="#pop!Verbatim5"/>+      </context>+      <context name="Verbatim5" attribute="Verbatim" lineEndContext="#stay">+        <DetectSpaces/>+        <DetectIdentifier/>+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>+        <RegExpr String="\\end(?=\s*\{LVerbatim\*?\})" attribute="Structure" context="VerbFindEnd"/>+      </context>+       <!-- environment type 4: listings environment with optional parameter and HL switching-->-      <context name="ListingsEnvParam" attribute="Normal Text" fallthrough="true" fallthroughContext="Verbatim" lineEndContext="#stay">-        <Detect2Chars char="}" char1="[" attribute="Normal Text" context="#stay" />-        <RegExpr String="language\s*=\s*(?=[^,]+)" minimal="true" attribute="Normal Text" context="HighlightningSelector"/>-        <DetectChar char="}" attribute="Normal Text" context="Verbatim"/>-        <DetectChar char="]" attribute="Normal Text" context="Verbatim"/>+      <context name="ListingsEnv" attribute="Environment" lineEndContext="#stay">+        <DetectChar char="}" attribute="Normal Text" context="#pop!ListingsEnvParam"/>+        <RegExpr String="[^}]*" attribute="Error" context="#stay"/>       </context>+      <context name="ListingsEnvParam" attribute="Normal Text" lineEndContext="#pop!UnknownHighlighting" fallthrough="true" fallthroughContext="#pop!UnknownHighlighting">+        <DetectSpaces/>+        <DetectChar char="[" attribute="Normal Text" context="#pop!ListingsEnvParamInside"/>+        <DetectChar char="%" attribute="Comment" context="Comment"/>+      </context>+      <context name="ListingsEnvParamInside" attribute="Normal Text" lineEndContext="#stay">+        <DetectIdentifier/>+        <RegExpr String="\s*language\s*=\s*(?=[^],])" attribute="Normal Text" context="HighlightingSelector"/>+        <DetectChar char="]" attribute="Normal Text" context="ListingsEnvParamEnd"/>+        <DetectChar char="%" attribute="Comment" context="Comment"/>+      </context>+      <context name="ListingsEnvParamEnd" attribute="Normal Text" lineEndContext="#pop#pop!UnknownHighlighting" fallthrough="true" fallthroughContext="#pop#pop!UnknownHighlighting">+        <DetectSpaces/>+        <DetectChar char="%" attribute="Comment" context="Comment"/>+      </context>        <!-- environment type 5: minted environment with optional and HL switching -->+      <context name="MintedEnv" attribute="Environment" lineEndContext="#stay">+        <DetectChar char="}" attribute="Normal Text" context="#pop!MintedEnvParam"/>+        <RegExpr String="[^}]*" attribute="Error" context="#stay"/>+      </context>       <context name="MintedEnvParam" attribute="Normal Text" lineEndContext="#stay">-        <Detect2Chars char="}" char1="[" attribute="Normal Text" context="#stay" />-        <Detect2Chars char="}" char1="{" attribute="Normal Text" context="HighlightningSelector"/>-        <Detect2Chars char="]" char1="{" attribute="Normal Text" context="HighlightningSelector"/>-        <DetectChar char="}" attribute="Normal Text" context="Verbatim"/>+        <DetectSpaces/>+        <DetectChar char="[" attribute="Normal Text" context="#pop!MintedEnvParamInside"/>+        <DetectChar char="{" attribute="Normal Text" context="HighlightingSelector"/>+        <DetectChar char="%" attribute="Comment" context="Comment"/>       </context>+      <context name="MintedEnvParamInside" attribute="Normal Text" lineEndContext="#stay">+        <DetectSpaces/>+        <DetectIdentifier/>+        <DetectChar char="]" attribute="Normal Text" context="#pop!MintedEnvLang"/>+        <DetectChar char="%" attribute="Comment" context="Comment"/>+        <RegExpr String="\\&envname;" attribute="Macro" context="#stay"/>+      </context>+      <context name="MintedEnvLang" attribute="Normal Text" lineEndContext="#stay">+        <DetectSpaces/>+        <DetectChar char="{" attribute="Normal Text" context="HighlightingSelector"/>+        <DetectChar char="%" attribute="Comment" context="Comment"/>+      </context> +      <!-- parse verbatim text for lstinline and minted -->+      <context name="UnknownHighlighting" attribute="Verbatim" lineEndContext="#stay">+        <DetectSpaces/>+        <DetectIdentifier/>+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>+        <RegExpr String="\\end(?=\s*\{(lstlisting|minted)\*?\})" attribute="Structure" context="UnknownHighlightingEnd"/>+      </context>+      <context name="UnknownHighlightingEnd" attribute="Environment" lineEndContext="#stay">+        <DetectSpaces/>+        <DetectChar char="{" attribute="Normal Text" context="#stay"/>+        <DetectChar char="}" attribute="Normal Text" context="#pop#pop#pop#pop#pop#pop#pop" endRegion="block"/>+        <DetectIdentifier/>+      </context>++       <!-- Selector for different highlightning schemes, in case the language is not implemented we pop and thus fallback to verbatim -->-      <context name="HighlightningSelector" attribute="Normal Text" lineEndContext="#stay">-        <WordDetect String="C++" insensitive="true" context="HighlightningBeginC++"/>-        <WordDetect String="Python" insensitive="true" context="HighlightningBeginPython"/>-        <RegExpr String=".*(?=\}|\])" context="#pop"/>+      <context name="HighlightingSelector" attribute="Normal Text" lineEndContext="#stay">+        <WordDetect String="C++" insensitive="true" context="HighlightingBeginC++"/>+        <WordDetect String="Python" insensitive="true" context="HighlightingBeginPython"/>+        <DetectChar char="}" context="#pop!UnknownHighlighting"/>+        <DetectChar char="]" context="#pop!UnknownHighlighting"/>+        <RegExpr String="[^]}]*" context="#stay"/>       </context> -      <context name="HighlightningCommon" attribute="Normal Text" lineEndContext="#stay">+      <context name="HighlightingCommon" attribute="Normal Text" lineEndContext="#stay">         <RegExpr String="\\end\s*\{(lstlisting|minted)\*?\}" attribute="Structure" lookAhead="true" context="#pop#pop#pop#pop#pop#pop"/>       </context> -      <context name="HighlightningBeginC++" attribute="Normal Text" lineEndContext="#stay">-       <!-- Eat the trailing characters including } or ] after the language specification -->-        <RegExpr String=".*(\}|\])" context="HighlightningC++"/>+      <context name="HighlightingBeginC++" attribute="Normal Text" lineEndContext="#stay">+        <DetectChar char="}" context="HighlightingC++"/>+        <DetectChar char="]" context="HighlightingC++"/>+        <!-- Eat the trailing characters including } or ] after the language specification -->+        <RegExpr String="[^]}]*" context="#stay"/>       </context> -      <context name="HighlightningC++" attribute="Normal Text" lineEndContext="#stay">-        <IncludeRules context="HighlightningCommon"/>+      <context name="HighlightingC++" attribute="Normal Text" lineEndContext="#stay">+        <IncludeRules context="HighlightingCommon"/>         <IncludeRules context="##C++" includeAttrib="true"/>       </context> -      <context name="HighlightningBeginPython" attribute="Normal Text" lineEndContext="#stay">-        <RegExpr String=".*(\}|\])" context="HighlightningPython"/>+      <context name="HighlightingBeginPython" attribute="Normal Text" lineEndContext="#stay">+        <DetectChar char="}" context="HighlightingPython"/>+        <DetectChar char="]" context="HighlightingPython"/>+        <RegExpr String="[^]}]*" context="#stay"/>       </context> -      <context name="HighlightningPython" attribute="Normal Text" lineEndContext="#stay">-        <IncludeRules context="HighlightningCommon"/>+      <context name="HighlightingPython" attribute="Normal Text" lineEndContext="#stay">+        <IncludeRules context="HighlightingCommon"/>         <IncludeRules context="##Python"/>       </context> -      <!-- parse verbatim text -->-      <context name="Verbatim" attribute="Verbatim" lineEndContext="#stay">-        <DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>-        <RegExpr String="\\end(?=\s*\{(verbatim|lstlisting|boxedverbatim|(B|L)?Verbatim|minted)\*?\})" attribute="Structure"  context="VerbFindEnd"/>-      </context>-       <!-- end of verbatim environment -->       <context name="VerbFindEnd" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">-        <RegExpr String="\s*\{" attribute="Normal Text" context="#stay"/>-        <RegExpr String="(verbatim|lstlisting|boxedverbatim|(B|L)?Verbatim|minted)\*?" attribute="Environment" context="#stay"/>-        <DetectChar char="}" attribute="Normal Text" context="#pop#pop#pop#pop#pop" endRegion="block"/>+        <DetectSpaces/>+        <DetectChar char="{" attribute="Normal Text" context="#stay"/>+        <DetectChar char="}" attribute="Normal Text" context="#pop#pop#pop#pop#pop#pop" endRegion="block"/>+        <keyword String="VerbatimEnv" attribute="Environment"/>       </context> -      <!-- begin comment environment  -->-      <context name="CommentEnv" attribute="Environment" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop#pop#pop">+      <!-- begin comment environment -->+      <context name="CommentEnv" attribute="Environment" lineEndContext="#stay">         <DetectChar char="}" attribute="Normal Text" context="BlockComment"/>-        <RegExpr String="[a-zA-Z]" attribute="Environment" lookAhead="true" context="#pop"/>-        <IncludeRules context="EnvCommon" />+        <RegExpr String="[^}]*" attribute="Error" context="#stay"/>        </context>        <!-- parse comment text -->       <context name="BlockComment" attribute="Comment" lineEndContext="#stay">-        <DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>+        <DetectSpaces/>+        <DetectIdentifier/>         <RegExpr String="\\end(?=\s*\{comment\*?\})" attribute="Structure" context="CommFindEnd"/>       </context>        <!-- end of comment environment -->       <context name="CommFindEnd" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">-        <RegExpr String="\s*\{" attribute="Normal Text" context="#stay"/>-        <RegExpr String="comment\*?" attribute="Environment" context="#stay"/>+        <DetectSpaces/>+        <DetectChar char="{" attribute="Normal Text" context="#stay"/>         <DetectChar char="}" attribute="Normal Text" context="#pop#pop#pop#pop#pop" endRegion="block"/>+        <keyword String="CommentEnv" attribute="Environment"/>       </context>        <!-- environment type 4: math environment with its own mathmode -->       <context name="MathEnv" attribute="Environment" lineEndContext="#stay">         <DetectChar char="}" attribute="Normal Text" context="MathModeEnv"/>-        <RegExpr String="[a-zA-Z]" attribute="Environment" lookAhead="true" context="#pop"/>-        <IncludeRules context="EnvCommon" />+        <RegExpr String="[^}]*" attribute="Error" context="#stay"/>       </context>        <!-- environment type 5: math environment with its own mathmode and parameter -->-      <context name="MathEnvParam" attribute="Normal Text" lineEndContext="#stay">-        <RegExpr String="\}\{[^\}]*\}" attribute="Normal Text" context="MathModeEnv"/>-        <DetectChar char="}" attribute="Normal Text" context="MathModeEnv"/>-        <RegExpr String="[a-zA-Z]" attribute="Environment" lookAhead="true" context="#pop"/>-        <IncludeRules context="EnvCommon" />+      <context name="MathEnvWithParam" attribute="Environment" lineEndContext="#stay">+        <DetectChar char="}" attribute="Normal Text" context="MathEnvWithParamInside"/>+        <RegExpr String="[^}]*" attribute="Error" context="#stay"/>       </context>--      <!-- environment common -->-      <context name="EnvCommon" attribute="Environment" lineEndContext="#stay">-        <DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>-        <RegExpr String="\*(?=\})" attribute="Environment" context="#stay"/>-        <RegExpr String="\*[^\}]*" attribute="Error" context="#pop#pop#pop"/>-        <RegExpr String="[^a-zA-Z\xd7][^\}]*" attribute="Error" context="#pop#pop#pop"/>+      <context name="MathEnvWithParamInside" attribute="Normal Text" lineEndContext="#stay">+        <DetectSpaces/>+        <RangeDetect char="[" char1="]" attribute="Normal Text" context="#stay"/>+        <DetectChar char="{" attribute="Normal Text" context="MathEnvParamInside"/>       </context>+      <context name="MathEnvParamInside" attribute="Normal Text" lineEndContext="#stay">+        <DetectSpaces/>+        <DetectChar char="}" attribute="Normal Text" context="#pop#pop!MathModeEnv"/>+      </context>        <!-- parse math environment -->       <context name="MathModeEnv" attribute="Math" lineEndContext="#stay">-        <RegExpr String="\\begin(?=[^a-zA-Z])" attribute="Structure" context="FindBeginEnvironment" beginRegion="block"/>-        <RegExpr String="\\end(?=[^a-zA-Z])" attribute="Structure" context="MathFindEnd" endRegion="block"/>-        <StringDetect String="\(" attribute="Error" context="#stay" />-        <StringDetect String="\[" attribute="Error" context="#stay" />-        <StringDetect String="\)" attribute="Error" context="#stay" />-        <StringDetect String="\]" attribute="Error" context="#stay" />-        <RegExpr String="\\(text|intertext|mbox)\s*(?=\{)" attribute="Macro Mathmode" context="MathModeText" />-        <DetectChar char="\" attribute="Macro Mathmode" context="MathContrSeq"/>-        <StringDetect String="$$" attribute="Error" context="#stay" />-        <DetectChar char="$" attribute="Error" context="#stay" />+        <DetectSpaces/>+        <DetectIdentifier/>+        <DetectChar char="\" attribute="Math" context="BackslashMathModeEnv" lookAhead="true"/>+        <DetectChar char="$" attribute="Error" context="#stay"/>+        <RegExpr String="&regionmarker;" attribute="Region Marker" context="RegionComment" firstNonSpace="true"/>         <DetectChar char="%" attribute="Comment" context="Comment"/>-        <DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>-        <RegExpr String="%\s*BEGIN.*$" attribute="Region Marker" context="#stay" beginRegion="regionMarker" firstNonSpace="true"/>-        <RegExpr String="%\s*END.*$" attribute="Region Marker" context="#stay" endRegion="regionMarker" firstNonSpace="true"/>+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>       </context>+      <context name="BackslashMathModeEnv" attribute="Math" lineEndContext="#pop">+        <keyword String="beginEnv" attribute="Structure" context="#pop!FindBeginEnvironmentInMathMode" beginRegion="block"/>+        <keyword String="endEnv" attribute="Structure" context="#pop!MathFindEnd" endRegion="block"/>+        <keyword String="MathModeText" attribute="Macro Mathmode" context="#pop!MathModeText"/>+        <Detect2Chars char="\" char1="(" attribute="Error" context="#pop"/>+        <Detect2Chars char="\" char1=")" attribute="Error" context="#pop"/>+        <Detect2Chars char="\" char1="[" attribute="Error" context="#pop"/>+        <Detect2Chars char="\" char1="]" attribute="Error" context="#pop"/>+        <DetectChar char="\" attribute="Macro Mathmode" context="#pop!MathContrSeq"/>+      </context> +      <!-- start of an environment in math mode -->+      <context name="FindBeginEnvironmentInMathMode" attribute="Normal Text" lineEndContext="#stay">+        <DetectSpaces/>+        <DetectChar char="{" attribute="Normal Text" context="BeginEnvironmentInMathMode"/>+        <RegExpr String="." attribute="Normal Text" context="#pop"/>+      </context>++      <!-- filter the environment name and check the type in math mode -->+      <context name="BeginEnvironmentInMathMode" attribute="Environment" lineEndContext="#stay">+        <keyword String="ListingsEnv" attribute="Environment" context="ListingsEnv"/>+        <keyword String="MintedEnv" attribute="Environment" context="MintedEnv"/>+        <keyword String="VerbatimEnv" attribute="Environment" context="VerbatimEnv" lookAhead="true"/>+        <keyword String="CommentEnv" attribute="Environment" context="CommentEnv"/>+        <keyword String="TabEnv" attribute="Environment" context="TabEnv"/>+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>+        <!-- keywords in MathEnvParam and MathEnv. Do not use keyword to avoid autocomplete -->+        <RegExpr String="(equation|IEEEeqnarray(box)?|([BVvbp]|small)matrix|(fl)?align|x{0,2}alignat|cases|displaymath|gather|math|multline|(sub)?eqnarray)(?=[^a-zA-Z]|$)\*?" attribute="Error" context="#pop"/>+        <RegExpr String="&envname;" attribute="Environment" context="LatexEnv"/>+        <RegExpr String="." attribute="Error" context="#pop"/>+      </context>+       <!-- end of math environment -->       <context name="MathFindEnd" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">-        <RegExpr String="\s*\{" attribute="Normal Text" context="#stay"/>-        <RegExpr String="(equation|displaymath|eqnarray|subeqnarray|math|multline|gather|align(at)?|flalign|xalignat|xxalignat|IEEEeqnarray|IEEEeqnarraybox|smallmatrix|pmatrix|bmatrix|Bmatrix|vmatrix|Vmatrix|cases)\*?" attribute="Environment" context="#stay"/>-        <DetectChar char="}" attribute="Normal Text" context="#pop#pop#pop#pop#pop"  endRegion="block"/>+        <DetectSpaces/>+        <DetectChar char="{" attribute="Normal Text" context="#stay"/>+        <keyword String="MathEnvParam" attribute="Environment" context="MathFindEndInside"/>+        <keyword String="MathEnv" attribute="Environment" context="MathFindEndInside"/>+        <RegExpr String="&envname;" attribute="Environment" context="NoMathFindEndInside"/>+        <RegExpr String="." attribute="Error" context="#pop"/>       </context>+      <context name="MathFindEndInside" attribute="Normal Text" lineEndContext="#pop#pop">+        <DetectChar char="}" attribute="Normal Text" context="#pop#pop#pop#pop#pop#pop" endRegion="block"/>+        <RegExpr String="[^}]*" attribute="Error" context="#stay"/>+      </context>+      <context name="NoMathFindEndInside" attribute="Normal Text" lineEndContext="#pop#pop">+        <DetectChar char="}" attribute="Normal Text" context="#pop#pop" endRegion="block"/>+        <RegExpr String="[^}]*" attribute="Error" context="#stay"/>+      </context> -          <!-- environment type 9: tabular -->+      <!-- environment type 9: tabular -->       <context name="TabEnv" attribute="Environment" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop#pop#pop">         <DetectChar char="}" attribute="Normal Text" context="Tab"/>-        <RegExpr String="[a-zA-Z]" attribute="Environment" lookAhead="true" context="#pop"/>-        <IncludeRules context="EnvCommon" />-       </context>+        <RegExpr String="[^}]*" attribute="Error" context="#stay"/>+      </context>        <!-- parse tabular text -->       <context name="Tab" attribute="Normal Text" lineEndContext="#stay">         <DetectChar char="&amp;" attribute="Ampersand" context="#stay"/>-        <StringDetect String="@{" attribute="Column Separator" context="Column Separator"/>-        <RegExpr String="\\end(?=\s*\{(tabularx|tabular|supertabular|mpsupertabular|xtabular|mpxtabular|longtable)\*?\})" attribute="Structure"  context="TabFindEnd"/>+        <Detect2Chars char="@" char1="{" attribute="Column Separator" context="Column Separator"/>+        <RegExpr String="\\end\b" attribute="Structure" context="TabFindEnd"/> <!-- endEnv -->         <IncludeRules context="Normal Text" />       </context>        <context name="Column Separator" attribute="Column Separator" lineEndContext="#stay">-              <DetectChar char="{" attribute="Column Separator" context="Column Separator"/>-              <DetectChar char="}" attribute="Column Separator" context="#pop"/>-              <RegExpr String="." attribute="Column Separator"  context="#stay"/>-<!--          the last regexp is very stupid. Suggestions are welcome! Fallthrough did not help-->+        <DetectChar char="{" attribute="Column Separator" context="Column Separator"/>+        <DetectChar char="}" attribute="Column Separator" context="#pop"/>       </context>        <!-- end of tabular environment -->       <context name="TabFindEnd" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">-        <RegExpr String="\s*\{" attribute="Normal Text" context="#stay"/>-        <RegExpr String="(tabularx|tabular|supertabular|mpsupertabular|xtabular|mpxtabular|longtable)\*?" attribute="Environment" context="#stay"/>+        <DetectSpaces/>+        <DetectChar char="{" attribute="Normal Text" context="#stay"/>         <DetectChar char="}" attribute="Normal Text" context="#pop#pop#pop#pop#pop" endRegion="block"/>+        <keyword String="TabEnv" attribute="Environment" context="#stay"/>       </context> -      <!-- math mode: starting with $ or \( -->+      <!-- math mode: starting with $ -->+      <context name="MathModeTex" attribute="Math" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop!MathMode">+        <DetectChar char="$" attribute="Math" context="#pop!MathModeDisplay" beginRegion="mathMode"/>+      </context>       <context name="MathMode" attribute="Math" lineEndContext="#stay">-        <StringDetect String="$$" attribute="Error" context="#stay" />-        <DetectChar char="$" attribute="Math" context="#pop" />-        <Detect2Chars char="\" char1=")" attribute="Math" context="#pop" />-        <Detect2Chars char="\" char1="]" attribute="Error" context="#stay" />-        <IncludeRules context="MathModeCommon" />+        <DetectChar char="$" attribute="Math" context="#pop"/>+        <IncludeRules context="MathModeCommon"/>       </context>        <!-- math mode: starting with $$ -->       <context name="MathModeDisplay" attribute="Math" lineEndContext="#stay">-        <StringDetect String="$$" attribute="Math" context="#pop" endRegion="mathMode" />-        <DetectChar char="$" attribute="Error" context="#stay" />-        <Detect2Chars char="\" char1="]" attribute="Error" context="#stay" />-        <Detect2Chars char="\" char1=")" attribute="Error" context="#stay" />-        <IncludeRules context="MathModeCommon" />+        <Detect2Chars char="$" char1="$" attribute="Math" context="#pop" endRegion="mathMode"/>+        <DetectChar char="$" attribute="Error" context="#stay"/>+        <IncludeRules context="MathModeCommon"/>       </context> +      <!-- math mode: starting with \( -->+      <context name="MathModeLatex" attribute="Math" lineEndContext="#stay">+        <Detect2Chars char="\" char1=")" attribute="Math" context="#pop"/>+        <IncludeRules context="MathModeCommon"/>+      </context>+       <!-- math mode: starting with \[ -->-      <context name="MathModeEquation" attribute="Math" lineEndContext="#stay">-        <Detect2Chars char="\" char1="]" attribute="Math" context="#pop" endRegion="mathMode" />-        <StringDetect String="$$" attribute="Error" context="#stay" />-        <DetectChar char="$" attribute="Error" context="#stay" />-        <Detect2Chars char="\" char1=")" attribute="Error" context="#stay" />-        <IncludeRules context="MathModeCommon" />+      <context name="MathModeLatexEquation" attribute="Math" lineEndContext="#stay">+        <Detect2Chars char="\" char1="]" attribute="Math" context="#pop" endRegion="mathMode"/>+        <IncludeRules context="MathModeCommon"/>       </context> -      <!-- math mode: \ensuremath{...} !-->+      <!-- math mode: \ensuremath{...} -->       <context name="MathModeEnsure" attribute="Math" lineEndContext="#stay">-              <DetectChar char="{" attribute="Math" context="MathModeEnsure" />-              <DetectChar char="}" attribute="Math" context="#pop" />-              <IncludeRules context="MathModeCommon" />+        <DetectSpaces/>+        <DetectChar char="{" attribute="Math" context="#pop!MathModeEnsureInside"/>+        <RegExpr String="." attribute="Error" context="#pop"/>       </context>+      <context name="MathModeEnsureInside" attribute="Math" lineEndContext="#stay">+        <DetectChar char="{" attribute="Math" context="MathModeEnsureInside" />+        <DetectChar char="}" attribute="Math" context="#pop" />+        <IncludeRules context="MathModeCommon"/>+      </context>        <!-- math mode common -->       <context name="MathModeCommon" attribute="Math" lineEndContext="#stay">-        <RegExpr String="\\(begin|end)\s*\{(equation|displaymath|eqnarray|subeqnarray|math|multline|gather|align|flalign|alignat|xalignat|xxalignat|IEEEeqnarray)\*?\}" attribute="Error" context="#stay"/>-        <RegExpr String="\\begin(?=[^a-zA-Z])" attribute="Macro Mathmode" context="#stay" beginRegion="block" />-        <RegExpr String="\\end(?=[^a-zA-Z])" attribute="Macro Mathmode" context="#stay" endRegion="block" />-        <RegExpr String="\\(text|intertext|mbox)\s*(?=\{)" attribute="Macro Mathmode" context="MathModeText" />-        <DetectChar char="\" attribute="Macro Mathmode" context="MathContrSeq"/>+        <DetectSpaces/>+        <DetectIdentifier/>+        <DetectChar char="\" attribute="Math" context="BackslashMathModeCommon" lookAhead="true"/>+        <RegExpr String="&regionmarker;" attribute="Region Marker" context="RegionComment" firstNonSpace="true"/>         <DetectChar char="%" attribute="Comment" context="Comment"/>-        <RegExpr String="%\s*BEGIN.*$" attribute="Region Marker" context="#stay" beginRegion="regionMarker" firstNonSpace="true"/>-        <RegExpr String="%\s*END.*$" attribute="Region Marker" context="#stay" endRegion="regionMarker" firstNonSpace="true"/>-        <DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>       </context>+      <context name="BackslashMathModeCommon" attribute="Math" lineEndContext="#pop">+        <keyword String="beginEnv" attribute="Structure" context="#pop!MathEnvironment" beginRegion="block"/>+        <keyword String="endEnv" attribute="Structure" context="#pop!MathEnvironmentEnd" endRegion="block"/>+        <keyword String="MathModeText" attribute="Macro Mathmode" context="#pop!MathModeText" />+        <DetectChar char="\" attribute="Macro Mathmode" context="#pop!MathContrSeq"/>+      </context>+      <context name="MathEnvironment" attribute="Math" lineEndContext="#stay">+        <DetectSpaces/>+        <DetectChar char="{" attribute="Normal Text" context="MathEnvironmentInside"/>+        <RegExpr String="." attribute="Error" context="#pop"/>+      </context>+      <context name="MathEnvironmentInside" attribute="Environment" lineEndContext="#stay">+        <DetectChar char="}" attribute="Normal Text" context="#pop#pop"/>+        <RegExpr String="&envname;" attribute="Environment" context="#stay"/>+        <RegExpr String="[^}a-zA-Z]+|." attribute="Error" context="#stay"/>+      </context>+      <context name="MathEnvironmentEnd" attribute="Math" lineEndContext="#stay">+        <DetectSpaces/>+        <DetectChar char="{" attribute="Normal Text" context="MathEnvironmentEndInside"/>+        <RegExpr String="." attribute="Error" context="#pop"/>+      </context>+      <context name="MathEnvironmentEndInside" attribute="Environment" lineEndContext="#stay">+        <DetectChar char="}" attribute="Normal Text" context="#pop#pop"/>+        <WordDetect String="ensuremath" attribute="Environment" context="#pop!LatexEnvEnd"/>+        <RegExpr String="&envname;" attribute="Environment" context="#stay"/>+        <RegExpr String="[^}a-zA-Z]+|." attribute="Error" context="#pop#pop"/>+      </context>        <!-- command in mathmode -->       <context name="MathContrSeq" attribute="Macro Mathmode" lineEndContext="#pop">-        <DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>-        <RegExpr String="[a-zA-Z]+\*?" attribute="Macro Mathmode" context="#pop"/>-        <RegExpr String="[^a-zA-Z]" attribute="Macro Mathmode" context="#pop" />+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>+        <RegExpr String="&envname;|." attribute="Macro Mathmode" context="#pop" />       </context>        <!-- text in mathmode -->-      <context name="MathModeText" attribute="Normal Text" lineEndContext="#stay" >-         <DetectChar char="{" attribute="Normal Text" context="MathModeTextParameterStart"/>+      <context name="MathModeText" attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="MathContrSeq">+        <DetectSpaces/>+        <DetectChar char="{" attribute="Normal Text" context="MathModeTextParameterStart"/>       </context>+      <context name="MathModeTextInside" attribute="Normal Text" lineEndContext="#stay" >+        <DetectChar char="{" attribute="Normal Text" context="MathModeTextParameterStart"/>+      </context>        <context name="MathModeTextParameterStart" attribute="Normal Text" lineEndContext="#stay" >-        <RegExpr String="\\." attribute="Normal Text" context="#stay"/>-        <DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>-        <RegExpr String="\$.*\$" minimal="true" attribute="Math" context="#stay"/>-        <DetectChar char="{" attribute="Normal Text" context="MathModeTextParameter"/>+        <DetectChar char="&bullet;" attribute="Bullet" context="#stay"/>+        <RangeDetect char="$" char1="$" attribute="Math" context="#stay"/>+        <DetectChar char="{" attribute="Normal Text" context="MathModeTextInside" lookAhead="true"/>         <DetectChar char="}" attribute="Normal Text" context="#pop#pop"/>         <DetectChar char="%" attribute="Comment" context="Comment"/>+        <DetectChar char="\" attribute="Macro Mathmode" context="MathContrSeq"/>       </context> -      <context name="MathModeTextParameter" attribute="Normal Text" lineEndContext="#stay" >-        <RegExpr String="\\." attribute="Normal Text" context="#stay"/>-        <DetectChar char="{" attribute="Normal Text" context="MathModeTextParameter"/>-        <DetectChar char="}" attribute="Normal Text" context="#pop"/>-        <DetectChar char="&#xd7;" attribute="Bullet" context="#stay"/>-        <DetectChar char="%" attribute="Comment" context="Comment"/>+      <!-- iffalse aka multiline comment -->+      <context name="Multiline Comment" attribute="Comment" lineEndContext="#stay">+        <DetectChar char="\" attribute="Comment" context="BackslashMultilineComment" lookAhead="true"/>       </context>--     <!--    iffalse aka multiline comment    -->-        <context name="Multiline Comment" attribute="Comment" lineEndContext="#stay">-          <WordDetect String="\fi" attribute="Comment" context="#pop"/>-          <WordDetect String="\else" attribute="Comment" context="#pop"/>-        </context>+      <context name="BackslashMultilineComment" attribute="Comment" lineEndContext="#pop">+        <keyword String="iffalseend" attribute="Comment" context="#pop#pop"/>+        <DetectChar char="\" attribute="Comment" context="#pop"/>+      </context>       <!-- comment -->+      <context name="RegionComment" attribute="Region Marker" lineEndContext="#pop"/>       <context name="Comment" attribute="Comment" lineEndContext="#pop">-              <RegExpr String="(FIXME|TODO):?" attribute="Alert" context="#stay"/>-        <StringDetect String="\KileResetHL" attribute="Comment" context="Normal Text"/>-        <StringDetect String="\KateResetHL" attribute="Comment" context="Normal Text"/>+        <DetectSpaces/>+        <IncludeRules context="##Alerts" />+        <DetectIdentifier/>+        <DetectChar char="\" attribute="Comment" context="BackslashComment" lookAhead="true"/>       </context>+      <context name="BackslashComment" attribute="Comment" lineEndContext="#pop">+        <keyword String="ResetHL" attribute="Comment" context="#pop!Normal Text"/>+        <DetectChar char="\" attribute="Comment" context="#pop"/>+      </context>     </contexts>      <itemDatas>@@ -556,12 +990,12 @@       <itemData name="Builtin Macro" defStyleNum="dsBuiltIn" spellChecking="false"/>       <itemData name="Macro Mathmode" defStyleNum="dsSpecialChar" spellChecking="false"/>       <itemData name="Environment" defStyleNum="dsExtension" spellChecking="false"/>+      <itemData name="Reference" defStyleNum="dsExtension" spellChecking="false"/>       <itemData name="Verbatim" defStyleNum="dsVerbatimString" spellChecking="false"/>       <itemData name="Region Marker" defStyleNum="dsRegionMarker" spellChecking="false"/>       <itemData name="Bullet" defStyleNum="dsInformation" spellChecking="false"/>       <itemData name="Ampersand" defStyleNum="dsOperator" bold="1" spellChecking="false"/>       <itemData name="Column Separator" defStyleNum="dsChar" spellChecking="false"/>-      <itemData name="Alert" defStyleNum="dsAlert" spellChecking="false"/>       <!-- in section headers -->       <itemData name="Sectioning Text" defStyleNum="dsNormal" bold="1"/>       <itemData name="Sectioning Macro" defStyleNum="dsFunction" bold="1" spellChecking="false"/>@@ -571,7 +1005,7 @@   </highlighting>    <general>-    <keywords weakDeliminator="\" wordWrapDeliminator=",{}[]"/>+    <keywords weakDeliminator="\*" additionalDeliminator="$" wordWrapDeliminator=",{}[]"/>     <comments>       <comment name="singleLine" start="%" />     </comments>
syntax/literate-haskell.xml view
@@ -1,6 +1,6 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE language SYSTEM "language.dtd">-<language name="Literate Haskell" version="4" kateversion="3.4" section="Sources" extensions="*.lhs" mimetype="text/x-haskell" author="Nicolas Wu (zenzike@gmail.com)" license="LGPL">+<language name="Literate Haskell" version="5" kateversion="3.4" section="Sources" extensions="*.lhs" mimetype="text/x-literate-haskell" author="Nicolas Wu (zenzike@gmail.com)" license="LGPL">   <highlighting>   <contexts>     <context attribute="Text" lineEndContext="#stay" name="text">
syntax/lua.xml view
@@ -8,6 +8,11 @@      CHANGES +    [ Version 1.05 (2019-06-03) by Jonathan Poelen ]++    - warn and coroutine.kill (Lua 5.4)+    - end of a function as Keyword rather than Control+     [ Version 1.04 (2018-04-30) by Jonathan Poelen ]      - based on Lua 5.3@@ -43,7 +48,7 @@     - NOTE, FIXME, TODO alerts added on comments     - improved highlighting -->-<language name="Lua" version="5" indenter="lua" kateversion="5.0" section="Scripts" extensions="*.lua" mimetype="text/x-lua">+<language name="Lua" version="7" indenter="lua" kateversion="5.0" section="Scripts" extensions="*.lua" mimetype="text/x-lua">   <highlighting>     <list name="keywords">       <item>and</item>@@ -74,6 +79,22 @@       <item>while</item>     </list> +    <list name="startcontrol">+      <item>do</item>+      <item>if</item>+      <item>repeat</item>+    </list>++    <list name="elsecontrol">+      <item>else</item>+      <item>elseif</item>+    </list>++    <list name="endcontrol">+      <item>end</item>+      <item>until</item>+    </list>+     <list name="basevar">       <item>_PROMPT</item>       <item>_PROMPT2</item>@@ -121,12 +142,14 @@       <item>tonumber</item>       <item>tostring</item>       <item>type</item>+      <item>warn</item>       <item>xpcall</item>        <!-- Coroutine manipulation -->       <item>coroutine.create</item>       <item>coroutine.isyieldable</item>       <item>coroutine.resume</item>+      <item>coroutine.kill</item>       <item>coroutine.running</item>       <item>coroutine.status</item>       <item>coroutine.wrap</item>@@ -453,13 +476,9 @@         <keyword      attribute="Metamethod" context="#stay"       String="metamethod"/>         <keyword      attribute="BVar"     context="#stay"         String="basevar"/> -        <WordDetect   attribute="Keyword"  context="#stay" beginRegion="chunk" String="function" />+        <WordDetect   attribute="Keyword"  context="Function" beginRegion="chunk" String="function" />         <keyword      attribute="Keyword"  context="#stay" String="keywords" />-        <WordDetect   attribute="Control"  context="#stay" endRegion="chunk"   beginRegion="chunk" String="else" />-        <WordDetect   attribute="Control"  context="#stay" endRegion="chunk"   beginRegion="chunk" String="elseif" />-        <WordDetect   attribute="Control"  context="#stay" beginRegion="chunk" String="do" />-        <WordDetect   attribute="Control"  context="#stay" beginRegion="chunk" String="if" />-        <WordDetect   attribute="Control"  context="#stay" endRegion="chunk"   String="end" />+        <keyword      attribute="Control"  context="StartControl" beginRegion="chunk" String="startcontrol" />         <keyword      attribute="Control"  context="#stay" String="control" />          <DetectChar   attribute="Symbols"  context="#stay" beginRegion="table" char="{" />@@ -479,6 +498,17 @@         <AnyChar      attribute="Symbols"  context="#stay" String=":[]().,=~+-*/%&amp;|^&gt;&lt;#;" />       </context> +      <context name="StartControl" attribute="Normal Text"  lineEndContext="#stay">+        <keyword      attribute="Control"  context="#stay" endRegion="chunk"   beginRegion="chunk" String="elsecontrol" />+        <keyword      attribute="Control"  context="#pop"  endRegion="chunk"   String="endcontrol" />+        <IncludeRules context="Normal" />+      </context>++      <context name="Function" attribute="Normal Text"      lineEndContext="#stay">+        <WordDetect   attribute="Keyword"  context="#pop"  endRegion="chunk"   String="end" />+        <IncludeRules context="Normal" />+      </context>+       <context name="String_single" attribute="Strings"     lineEndContext="Error">         <DetectChar   attribute="Strings"  context="Special_char"  char="\" lookAhead="true"/>         <DetectChar   attribute="Strings"  context="#pop"  char="'"/>@@ -536,3 +566,4 @@     <keywords casesensitive="1" weakDeliminator="." additionalDeliminator="'&quot;"/>   </general> </language>+<!-- kate: space-indent on; indent-width 2; replace-tabs on; -->
syntax/markdown.xml view
@@ -6,6 +6,7 @@     Dual-Licensed under both GPL and BSD licenses.      Extended 2009 Claes Holmerson. http://github.com/claes/kate-markdown/+    Extended 2019 Nibaldo González S. <nibgonz@gmail.com> (changes under MIT license). --> <!--     The [^\s]{1} is in the regex to avoid interfering with bullet list which@@ -15,134 +16,623 @@     Match space or newline, followed by "*", followed by one non-space,     followed by anything non-asterisk, followed by "*", followed by     space, end-of-sentence punctuation, or the end of the line.++    TODO: We can be more specific and highlight text combinations in bold,+          italic and strikethrough.+          Example: **bold text and _italic and bold text_**+                   __bold and ~~strikeout and bold~~__ --> <!DOCTYPE language SYSTEM "language.dtd" [-<!ENTITY strongemphasisregex "(\s|^)[\*_]{3}[^\*_]+[\*_]{3}(\s|\.|,|;|:|\-|\?|$)">-<!ENTITY strongregex "(\s|^)[\*_]{2}[^\s]{1}[^\*_]+[\*_]{2}(\s|\.|,|;|:|\-|\?|$)">-<!ENTITY emphasisregex "(\s|^)[\*_]{1}[^\s]{1}[^\*_]+[\*_]{1}(\s|\.|,|;|:|\-|\?|$)">-<!ENTITY reflinkregex '\[[^\]\^]+\]\s*\[[^\]]*\]\s*(\s+\"[^\"]*\"){0,1}'>-<!ENTITY reflinktargetregex '\[[^\]\^]+\]\:\s+[^\s]+(\s+\"[^\"]*\"){0,1}'>-<!ENTITY footnoteregex "\[\^[^\]]+\]">-<!ENTITY inlinelinkregex "\[[^\]\^]+\]\s*\([^\(]*\)">-<!ENTITY inlineimageregex "\!\[[^\]\^]+\]\([^\(]*\)">-<!ENTITY refimageregex "\!\[[^\]\^]+\]\[[^\[]*\]">-<!ENTITY autolinkregex '&lt;(https?|ftp):[^\"&gt;\s]+&gt;'>-<!ENTITY mailtolinkregex "&lt;(?:mailto:)?([-.\w]+\@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)&gt;">-<!ENTITY rulerregex "\s*([\*\-_]\s?){3,}\s*">+<!-- NOTE: To correctly detect bold, italic or strike out text, use minimal="true" in RegExpr rules -->+<!ENTITY contentregex_ast "(?:(?:[^\*\s\\]|\\.)(?:[^\\]|\\.)*)?(?:[^\*\s\\]|\\\S)">+<!ENTITY contentregex_und "(?:(?:[^_\s\\]|\\.)(?:[^\\]|\\.)*)?(?:[^_\s\\]|\\\S)">+<!-- strong + emphasis text -->+<!ENTITY strongemphasisregex_ast "\*{3,5}&contentregex_ast;\*{3}">+<!ENTITY strongemphasisregex_und "\b_{3,5}&contentregex_und;_{3}">+<!ENTITY strongemphasisregex_ast_und "\*{2,5}(?:(?:_|_{3}|_{5})&contentregex_und;_+|(?:_{2}|_{4})&contentregex_und;_)\*{2}">+<!ENTITY strongemphasisregex_ast_und2 "\*_{2,5}&contentregex_und;_{2,5}\*(?!\*)">+<!ENTITY strongemphasisregex_und_ast "\b_{2,5}(?:(?:\*|\*{3}|\*{5})&contentregex_ast;\*+|(?:\*{2}|\*{4})&contentregex_ast;\*)_{2}">+<!ENTITY strongemphasisregex_und_ast2 "\b_(?:\*{2,5}&contentregex_ast;\*{2,5}_{0,4}|_{0,4}\*{2,5}&contentregex_ast;\*{2,5})_\b">+<!-- strong text -->+<!ENTITY strongregex_ast "\*{2}(?:&contentregex_ast;\*{2}|\*{1,3}&contentregex_ast;\*{2}(?!\*))">+<!ENTITY strongregex_und "\b_{2}(?:&contentregex_und;_{2}|_{1,3}&contentregex_und;_{2}(?!_))">+<!-- emphasis text -->+<!ENTITY emphasisregex_ast "\*(?:&contentregex_ast;\*|\*{1,4}&contentregex_ast;\*(?!\*))">+<!ENTITY emphasisregex_und "\b_(?:&contentregex_und;_+|_{1,4}&contentregex_und;_)\b">+<!-- links -->+<!ENTITY startlink "(?:https?|ftp)\://">+<!ENTITY link "&startlink;[^&quot;&gt;\s]+">+<!-- link in normal text -->+<!ENTITY implicitlink "\b&startlink;[^&quot;&gt;\s`\)]*[^\s!&quot;&apos;`\(\)\*,\.:;&lt;&gt;\?~\]\}\\](?=[[:punct:]]*(?:[\s\)]|$))">+<!-- references: [name], [name][id], [name][id] "title", [name](https://example.com) -->+<!ENTITY refchar "(?:\\.|[^\]\\])">+<!ENTITY refname "(?:\\.|[^\s\[\]\\])&refchar;*">+<!ENTITY reflinkid "\s*(?:&refname;)?">+<!ENTITY reflinkidregex "(?:\s?\[&reflinkid;\]|\((?:\\.|[^\(\)\\])*\))">+<!ENTITY reflinkregex "\[(?:(?=\s*&refname;\])|\s+(?=\]))">+<!-- target ref.: [id]: https://example.com "Title" -->+<!ENTITY reflinktargetregex '\[\s*(?:&refname;|\s)\]\:\s+(?=\S)'>+<!-- footnote: [^name] -->+<!ENTITY footnoteregex "\[\^&refchar;+\]">+<!-- image: ![title](https://example.com), ![title][id] -->+<!ENTITY startinlineimage "\!\[(?:\\.|[^\[\]\\])*\]\(">+<!ENTITY endinlineimage "(?:\\.|[^\(\)\\])*\)">+<!ENTITY inlineimageregex "&startinlineimage;(?=&endinlineimage;)">+<!ENTITY refimageregex "\!\[(?:\\.|[^\[\]\\])*\]\[&reflinkid;\]">+<!-- autolink & email: <https://example.com>, <example@kde.org>, <mailto:example@kde.org> -->+<!ENTITY autolinkregex '&lt;&link;&gt;'>+<!ENTITY email "[\-\.\w]+\@[\-a-z0-9]+(?:\.[\-a-z0-9]+)*\.[a-z]+">+<!ENTITY mailtolinkregex "&lt;(?:mailto:)?(?=&email;&gt;)">+<!-- horizontal rule: avoid conflicts with strong-emphasis text, lists and code blocks -->+<!ENTITY rulerregex "\s*(?:(?:\*\s*){3,}|(?:_\s*){3,}|(?:\-\s*){3,})\s*$"> <!-- two spaces at end of line generates linebreak --> <!ENTITY linebreakregex "  $">-<!ENTITY strikeoutregex "[~]{2}[^~].*[^~][~]{2}">-<!-- pandoc style -->+<!-- strikethrough text, pandoc style -->+<!ENTITY strikeoutregex "[~]{2}[^~](?:.*[^~])?[~]{2}">+<!-- start of fenced code block -->+<!ENTITY fcode "(`{3,}|~{3,})">+<!-- end of line & empty line -->+<!ENTITY end "\s*$">+<!ENTITY emptyline "^\s*$">+<!-- indented code block -->+<!ENTITY indentedcodeblock "(?:\s{4}|\t).*$">+<!-- bullet of list -->+<!ENTITY listbullet "[\*\+\-]">+<!-- metadata key & name of html tag -->+<!ENTITY metadatakey "[a-zA-Z0-9][\w\-\s]*\:">+<!ENTITY htmlname "[A-Za-z_\:][\w\.\:\-]*">+<!-- comment -->+<!ENTITY startcomment "&lt;!--">+<!ENTITY endcomment "--&gt;">+<!ENTITY checkbox "\[[ x]\](?=\s)"> ]>-<language name="Markdown" version="3" kateversion="3.8" section="Markup" extensions="*.md;*.mmd;*.markdown" priority="15" author="Darrin Yeager, Claes Holmerson" license="GPL,BSD">++<language name="Markdown" version="11" kateversion="5.53" section="Markup" extensions="*.md;*.mmd;*.markdown" priority="15" author="Darrin Yeager, Claes Holmerson" license="GPL,BSD">   <highlighting>     <contexts>-      <context attribute="Normal Text" lineEndContext="#stay" name="Normal Text">-        <DetectChar context="blockquote" char="&gt;" column="0"/>-        <RegExpr attribute="h1" String="^#\s.*[#]?$"/>-        <RegExpr attribute="h2" String="^##\s.*[#]?$"/>-        <RegExpr attribute="h3" String="^###\s.*[#]?$"/>-        <RegExpr attribute="h4" String="^####\s.*[#]?$"/>-        <RegExpr attribute="h5" String="^#####\s.*[#]?$"/>-        <RegExpr attribute="h6" String="^######\s.*[#]?$"/>-        <RegExpr attribute="ruler" String="&rulerregex;"/>-        <RegExpr attribute="strong" String="&strongregex;"/>-        <RegExpr attribute="emphasis" String="&emphasisregex;"/>-        <RegExpr attribute="strongemphasis" String="&strongemphasisregex;"/>-        <RegExpr attribute="code" String="^([\s]{4,}|\t+).*$"/>-        <RegExpr context="bullet" String="^[\*\+\-]\s"/>-        <RegExpr context="numlist" String="^[\d]+\.\s"/>-        <RegExpr attribute="meta" String="^(Title|Author|Date|Copyright|Revision|CSS|LaTeX\ XSLT|Categories|Tags|BaseName|Excerpt):(.*)+$"/>-        <IncludeRules context="inc"/>+      <!-- Start of the Markdown document: find metadata or code block -->+      <context name="Start Document" attribute="Normal Text" lineEndContext="Normal Text" lineEmptyContext="Normal Text" fallthrough="true" fallthroughContext="Normal Text">+        <!-- Some titles: (Title|Author|Date|Copyright|Revision|CSS|LaTeX\ XSLT|Categories|Tags|BaseName|Excerpt) -->+        <!-- Metadata: Markdown format -->+        <RegExpr attribute="Metadata" context="metadata" String="\-{3}&end;" column="0" beginRegion="metadata"/>+        <!-- Metadata: MultiMarkdown format -->+        <RegExpr attribute="Metadata Title" context="metadata-mm-value" String="^&metadatakey;(?=\s|$)" column="0"/>+        <!-- Code Block -->+        <RegExpr attribute="Code" context="find-code-block-start" String="^&indentedcodeblock;" column="0"/>       </context>-      <context attribute="blockquote" lineEndContext="#stay" lineEmptyContext="#pop" name="blockquote">-        <RegExpr attribute="bq-strong" String="&strongregex;"/>-        <RegExpr attribute="bq-emphasis" String="&emphasisregex;"/>+      <context name="metadata" attribute="Metadata" lineEndContext="#stay">+        <StringDetect attribute="Metadata" context="#pop!Normal Text" String="---" column="0" endRegion="metadata"/>+        <StringDetect attribute="Metadata" context="#pop!Normal Text" String="..." column="0" endRegion="metadata"/>+        <RegExpr attribute="Metadata Title" String="^&metadatakey;(?=\s|$)" column="0"/>+      </context>+      <context name="metadata-mm-value" attribute="Metadata" lineEndContext="#pop!metadata-mm"/>+      <context name="metadata-mm" attribute="Metadata" lineEndContext="#stay" lineEmptyContext="#pop!Normal Text" fallthrough="true" fallthroughContext="#pop!Normal Text">+        <!-- Find Metadata key or value -->+        <RegExpr attribute="Metadata Title" context="#pop!metadata-mm-value" String="^&metadatakey;(?=\s|$)" column="0"/>+        <RegExpr attribute="Metadata" context="#pop!metadata-mm-value" String="^(?:\s{4}|\t)" column="0"/>+      </context>+      <context name="find-code-block-start" attribute="Normal Text" lineEndContext="#stay" lineEmptyContext="#stay" fallthrough="true" fallthroughContext="#pop!Normal Text">+        <IncludeRules context="find-code-block"/>+      </context>++      <!-- Normal Text Document -->+      <context name="Normal Text" attribute="Normal Text" lineEndContext="#stay" lineEmptyContext="find-code-block">+        <!-- Header -->+        <DetectChar context="find-header" char="#" column="0" lookAhead="true"/>+        <RegExpr attribute="Header H1" String="(?:\=\s*){2,}$" firstNonSpace="true"/>+        <!-- Highlight code block after line only with spaces or comment -->+        <RegExpr attribute="Normal Text" context="find-code-block" String="&emptyline;" column="0"/>+        <StringDetect attribute="Comment" context="find-code-block" String="&startcomment;" column="0" lookAhead="true"/>+        <!-- Horizontal rules, Blockquotes and Lists.+             NOTE: The indentation of the lists is captured. -->+        <RegExpr attribute="Horizontal Rule" context="find-code-block" String="^&rulerregex;" column="0"/>+        <DetectChar attribute="Blockquote" context="blockquote" char="&gt;" firstNonSpace="true"/>+        <RegExpr attribute="List" context="list" String="(\s*)&listbullet;(\s+)" column="0"/>+        <RegExpr attribute="Number List" context="numlist" String="(\s*)\d\.(\s+)" column="0"/>+        <RegExpr attribute="Number List" context="numlist2" String="(\s*)\d\d+\.(\s+)" column="0"/>+        <!-- Find Strong, Emphasis and Strikethrough Text -->+        <DetectChar context="find-strong-normal" char="*" lookAhead="true"/>+        <DetectChar context="find-emphasis-normal" char="_" lookAhead="true"/>+        <RegExpr attribute="Strikethrough Text" minimal="true" String="&strikeoutregex;"/>+        <!-- Common -->         <IncludeRules context="inc"/>+        <RegExpr attribute="Normal Text: Link" String="&implicitlink;"/>       </context>-      <context attribute="bullet" lineEndContext="#stay" lineEmptyContext="#pop" name="bullet">-        <RegExpr attribute="bl-strong" String="&strongregex;"/>-        <RegExpr attribute="bl-emphasis" String="&emphasisregex;"/>+      <!-- Find indented code blocks. These are only allowed after an empty line or on the first line -->+      <context name="find-code-block" attribute="Normal Text" lineEndContext="#stay" lineEmptyContext="#stay" fallthrough="true" fallthroughContext="#pop">+        <RegExpr attribute="Code" String="^&indentedcodeblock;" column="0"/>+        <RegExpr attribute="Normal Text" String="&end;" />+        <RegExpr attribute="Comment" context="comment" String="\s*&startcomment;" column="0" beginRegion="comment"/>+        <RegExpr attribute="Comment" context="comment" String="\s*&startcomment;(?=.*&endcomment;)" beginRegion="comment"/>+      </context>++      <context name="find-header" attribute="Normal Text" lineEndContext="#pop">+        <RegExpr attribute="Header H1" context="#pop" String="^#\s.*[#]?$"/>+        <RegExpr attribute="Header H2" context="#pop" String="^##\s.*[#]?$"/>+        <RegExpr attribute="Header H3" context="#pop" String="^###\s.*[#]?$"/>+        <RegExpr attribute="Header H4" context="#pop" String="^####\s.*[#]?$"/>+        <RegExpr attribute="Header H5" context="#pop" String="^#####\s.*[#]?$"/>+        <RegExpr attribute="Header H6" context="#pop" String="^######\s.*[#]?$"/>+        <DetectChar attribute="Normal Text" context="#pop" char="#"/>+      </context>+      <context name="find-strong-normal" attribute="Normal Text" lineEndContext="#pop">+        <RegExpr attribute="Strong-Emphasis Text" context="#pop" minimal="true" String="&strongemphasisregex_ast_und;"/>+        <RegExpr attribute="Strong-Emphasis Text" context="#pop" minimal="true" String="&strongemphasisregex_ast_und2;"/>+        <RegExpr attribute="Strong Text" context="#pop" minimal="true" String="&strongregex_ast;"/>+        <RegExpr attribute="Strong-Emphasis Text" context="#pop" minimal="true" String="&strongemphasisregex_ast;"/>+        <RegExpr attribute="Emphasis Text" context="#pop" minimal="true" String="&emphasisregex_ast;"/>+        <DetectChar attribute="Normal Text" context="#pop" char="*"/>+      </context>+      <context name="find-emphasis-normal" attribute="Normal Text" lineEndContext="#pop">+        <RegExpr attribute="Strong-Emphasis Text" context="#pop" minimal="true" String="&strongemphasisregex_und_ast;"/>+        <RegExpr attribute="Strong-Emphasis Text" context="#pop" minimal="true" String="&strongemphasisregex_und_ast2;"/>+        <RegExpr attribute="Strong Text" context="#pop" minimal="true" String="&strongregex_und;"/>+        <RegExpr attribute="Strong-Emphasis Text" context="#pop" minimal="true" String="&strongemphasisregex_und;"/>+        <RegExpr attribute="Emphasis Text" context="#pop" minimal="true" String="&emphasisregex_und;"/>+        <DetectChar attribute="Normal Text" context="#pop" char="_"/>+      </context>++      <!-- Blockquote -->+      <context name="blockquote" attribute="Blockquote: Normal Text" lineEndContext="#stay" lineEmptyContext="#pop">+        <IncludeRules context="default-blockquote-1"/>+        <!-- Find code block -->+        <RegExpr attribute="Normal Text" context="#pop!find-code-block" String="&emptyline;" column="0"/>+        <StringDetect attribute="Comment" context="#pop!find-code-block" String="&startcomment;" column="0" lookAhead="true"/>+        <IncludeRules context="default-blockquote-2"/>+      </context>+      <!-- Blockquote within a list -->+      <context name="blockquote-list" attribute="Blockquote: Normal Text" lineEndContext="#stay" lineEmptyContext="#pop">+        <IncludeRules context="default-blockquote-1"/>+        <!-- Don't find code block -->+        <RegExpr attribute="Normal Text" context="#pop" String="&emptyline;" column="0"/>+        <StringDetect attribute="Comment" context="#pop!comment" String="&startcomment;" firstNonSpace="true"/>+        <IncludeRules context="default-blockquote-2"/>+      </context>++      <context name="default-blockquote-1" attribute="Blockquote: Normal Text" lineEndContext="#stay">+        <DetectChar attribute="Blockquote" char="&gt;" firstNonSpace="true"/>+        <!-- End with header, horizontal rule or list/numlist -->+        <RegExpr context="#pop" String="(?:\s*(?:&listbullet;|[\d]+\.)\s|#{1,6}\s|&rulerregex;)" column="0" lookAhead="true"/>+      </context>+      <context name="default-blockquote-2" attribute="Blockquote: Normal Text" lineEndContext="#stay">+        <!-- Strong, emphasis, strong-emphasis and strikethrough text -->+        <AnyChar context="find-strong-emphasis-blockquote" String="*_" lookAhead="true"/>+        <RegExpr attribute="Blockquote: Strikethrough Text" minimal="true" String="&strikeoutregex;"/>+        <!-- Common -->         <IncludeRules context="inc"/>+        <RegExpr attribute="Blockquote: Link" String="&implicitlink;"/>       </context>-      <context attribute="numlist" lineEndContext="#stay" lineEmptyContext="#pop" name="numlist">-        <RegExpr attribute="nl-strong" String="&strongregex;"/>-        <RegExpr attribute="nl-emphasis" String="&emphasisregex;"/>+      <context name="find-strong-emphasis-blockquote" attribute="Blockquote: Normal Text" lineEndContext="#pop">+        <RegExpr attribute="Blockquote: Strong-Emphasis Text" context="#pop" minimal="true" String="&strongemphasisregex_ast_und;"/>+        <RegExpr attribute="Blockquote: Strong-Emphasis Text" context="#pop" minimal="true" String="&strongemphasisregex_und_ast;"/>+        <RegExpr attribute="Blockquote: Strong-Emphasis Text" context="#pop" minimal="true" String="&strongemphasisregex_ast_und2;"/>+        <RegExpr attribute="Blockquote: Strong-Emphasis Text" context="#pop" minimal="true" String="&strongemphasisregex_und_ast2;"/>+        <RegExpr attribute="Blockquote: Strong Text" context="#pop" minimal="true" String="&strongregex_ast;"/>+        <RegExpr attribute="Blockquote: Strong Text" context="#pop" minimal="true" String="&strongregex_und;"/>+        <RegExpr attribute="Blockquote: Strong-Emphasis Text" context="#pop" minimal="true" String="&strongemphasisregex_ast;"/>+        <RegExpr attribute="Blockquote: Strong-Emphasis Text" context="#pop" minimal="true" String="&strongemphasisregex_und;"/>+        <RegExpr attribute="Blockquote: Emphasis Text" context="#pop" minimal="true" String="&emphasisregex_ast;" />+        <RegExpr attribute="Blockquote: Emphasis Text" context="#pop" minimal="true" String="&emphasisregex_und;"/>+        <AnyChar attribute="Blockquote: Normal Text" context="#pop" String="*_"/>+      </context>++      <!-- List and Numbered List -->+      <!-- NOTE: The indentation of the lists is captured. New paragraphs, code blocks, blockquotes or+           horizontal rules must have an indentation equal to or greater than the list, to be part of it. -->+      <!-- * list -->+      <context name="list" attribute="List: Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="content-list">+        <!-- Find indented code blocks, blockquotes and horizontal rules -->+        <RegExpr attribute="Code" String="%1%2\s&indentedcodeblock;" column="0" dynamic="true"/>+        <RegExpr attribute="Blockquote" context="blockquote-list" String="%1%2\s+&gt;" column="0" dynamic="true"/>+        <RegExpr attribute="Horizontal Rule" String="%1%2\s+&rulerregex;" column="0" dynamic="true"/>+        <RegExpr String="&emptyline;" column="0"/>+        <!-- Text with the same indentation captured corresponds to the item list -->+        <RegExpr context="content-list" String="%1%2\s" column="0" lookAhead="true" dynamic="true"/>+        <!-- Finish when the text has a lower indentation than the list -->+        <RegExpr context="#pop" String="^\s*\S" column="0" lookAhead="true"/>+        <!-- Highlight checkbox at the start of the item (task list) -->+        <RegExpr attribute="List: Checkbox" context="content-list" String="\s*&checkbox;"/>+      </context>+      <!-- 1. numlist (one digit) -->+      <context name="numlist" attribute="List: Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="content-list">+        <!-- Find indented code blocks, blockquotes and horizontal rules -->+        <RegExpr attribute="Code" String="%1%2\s{2}&indentedcodeblock;" column="0" dynamic="true"/>+        <RegExpr attribute="Blockquote" context="blockquote-list" String="%1%2\s{2,}&gt;" column="0" dynamic="true"/>+        <RegExpr attribute="Horizontal Rule" String="%1%2\s{2,}&rulerregex;" column="0" dynamic="true"/>+        <RegExpr String="&emptyline;" column="0"/>+        <!-- Text with the same indentation captured -->+        <RegExpr context="content-list" String="%1%2\s{2}" column="0" lookAhead="true" dynamic="true"/>+        <!-- Finish when the text has a lower indentation than the list -->+        <RegExpr context="#pop" String="^\s*\S" column="0" lookAhead="true"/>+      </context>+      <!-- 10. numlist (two or more digits) -->+      <context name="numlist2" attribute="List: Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="content-list">+        <!-- Find indented code blocks, blockquotes and horizontal rules -->+        <RegExpr attribute="Code" String="%1%2\s{3}&indentedcodeblock;" column="0" dynamic="true"/>+        <RegExpr attribute="Blockquote" context="blockquote-list" String="%1%2\s{3,}&gt;" column="0" dynamic="true"/>+        <RegExpr attribute="Horizontal Rule" String="%1%2\s{3,}&rulerregex;" column="0" dynamic="true"/>+        <RegExpr String="&emptyline;" column="0"/>+        <!-- Text with the same indentation captured -->+        <RegExpr context="content-list" String="%1%2\s{3}" column="0" lookAhead="true" dynamic="true"/>+        <!-- Finish when the text has a lower indentation than the list -->+        <RegExpr context="#pop" String="^\s*\S" column="0" lookAhead="true"/>+      </context>++      <!-- NOTE: Empty lines, blockquotes and horizontal rules send to contexts "list", "numlist" or "numlist2" (#pop),+           to check the indentation of the text and determine if the content of the list ends. -->+      <context name="content-list" attribute="List: Normal Text" lineEndContext="#stay" lineEmptyContext="#pop">+        <RegExpr context="#pop" String="&emptyline;" column="0"/>+        <!-- Blockquote and horzontal rule (check indentation) -->+        <RegExpr context="#pop" String="^\s*(?:&gt;|&rulerregex;)" column="0" lookAhead="true"/>+        <!-- End with header or new list/numlist -->+        <RegExpr context="#pop#pop" String="(?:\s*(?:&listbullet;|[\d]+\.)\s|#{1,6}\s)" column="0" lookAhead="true"/>+        <!-- Strong, emphasis, strong-emphasis and strikethrough text -->+        <AnyChar context="find-strong-emphasis-list" String="*_" lookAhead="true"/>+        <RegExpr attribute="List: Strikethrough Text" minimal="true" String="&strikeoutregex;"/>+        <!-- Common -->         <IncludeRules context="inc"/>+        <RegExpr attribute="List: Link" String="&implicitlink;"/>       </context>-      <context attribute="comment" lineEndContext="#stay" name="comment">-        <RegExpr String="--&gt;" attribute="comment" context="#pop" endRegion="comment"/>+      <context name="find-strong-emphasis-list" attribute="List: Normal Text" lineEndContext="#pop">+        <RegExpr attribute="List: Strong-Emphasis Text" context="#pop" minimal="true" String="&strongemphasisregex_ast_und;"/>+        <RegExpr attribute="List: Strong-Emphasis Text" context="#pop" minimal="true" String="&strongemphasisregex_und_ast;"/>+        <RegExpr attribute="List: Strong-Emphasis Text" context="#pop" minimal="true" String="&strongemphasisregex_ast_und2;"/>+        <RegExpr attribute="List: Strong-Emphasis Text" context="#pop" minimal="true" String="&strongemphasisregex_und_ast2;"/>+        <RegExpr attribute="List: Strong Text" context="#pop" minimal="true" String="&strongregex_ast;"/>+        <RegExpr attribute="List: Strong Text" context="#pop" minimal="true" String="&strongregex_und;"/>+        <RegExpr attribute="List: Strong-Emphasis Text" context="#pop" minimal="true" String="&strongemphasisregex_ast;"/>+        <RegExpr attribute="List: Strong-Emphasis Text" context="#pop" minimal="true" String="&strongemphasisregex_und;"/>+        <RegExpr attribute="List: Emphasis Text" context="#pop" minimal="true" String="&emphasisregex_ast;" />+        <RegExpr attribute="List: Emphasis Text" context="#pop" minimal="true" String="&emphasisregex_und;"/>+        <AnyChar attribute="List: Normal Text" context="#pop" String="*_"/>       </context>-      <context attribute="code" lineEndContext="#stay" name="php-code">-        <WordDetect attribute="code" context="#pop" String="```"/>-        <IncludeRules context="phpsource##PHP/PHP"/>++      <!-- Comments -->+      <context name="comment" attribute="Comment" lineEndContext="#stay">+        <StringDetect attribute="Comment" context="#pop" String="&endcomment;" endRegion="comment"/>+        <IncludeRules context="##Alerts"/>+        <IncludeRules context="##Modelines"/>       </context>-      <context attribute="code" lineEndContext="#stay" name="python-code">-        <WordDetect attribute="code" context="#pop" String="```"/>-        <IncludeRules context="##Python"/>++      <!-- Fenced Code Blocks -->+      <context name="find-lang-fenced-code" attribute="Normal Text" lineEndContext="#pop">+        <!-- Apply syntax highlighting to fenced code blocks for some languages -->+        <RegExpr attribute="Fenced Code" context="#pop!code" String="&fcode;&end;"/>+        <RegExpr attribute="Fenced Code" context="#pop!bash-code" String="&fcode;\s*(?:bash(?:rc|_profile|_login|_logout)?|shell|sh|zsh|profile|PKGBUILD|APKBUILD|ebuild|eclass|nix)&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!cpp-code" String="&fcode;\s*(?:[ch]pp|[ch]\+\+|[ch]xx|h?cc|hh|cuh?|ino|pde|moc)&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!csharp-code" String="&fcode;\s*(?:cs|csharp|c\#)&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!cmake-code" String="&fcode;\s*(?:cmake|CMakeLists(?:\.txt)?)&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!css-code" String="&fcode;\s*css&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!c-code" String="&fcode;\s*[ch]&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!doxygen-code" String="&fcode;\s*doxygen&end;" insensitive="true"/> <!-- Block comment of Doxygen -->+        <RegExpr attribute="Fenced Code" context="#pop!email-code" String="&fcode;\s*(?:email|emlx?|mbo?x)&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!go-code" String="&fcode;\s*go(?:lang)?&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!hamlet-code" String="&fcode;\s*[wxs]?hamlet&end;" insensitive="true"/> <!-- Included in the Haskell definition -->+        <RegExpr attribute="Fenced Code" context="#pop!haskell-code" String="&fcode;\s*(?:haskell|c?hs|hs\-boot)&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!html-code" String="&fcode;\s*(?:[sx]?html?|inc|tmpl|tpl)&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!java-code" String="&fcode;\s*(?:java|bsh)&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!javascript-code" String="&fcode;\s*(?:javascript|m?js|es6|kwinscript|julius)&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!jsx-code" String="&fcode;\s*(?:jsx|tsx|(?:java|type)script\-react)&end;" insensitive="true"/> <!-- Included in the HTML definition. Also apply for TSX. -->+        <RegExpr attribute="Fenced Code" context="#pop!json-code" String="&fcode;\s*(?:json5?|gltf)&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!matlab-code" String="&fcode;\s*matlab&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!markdown-code" String="&fcode;\s*(?:markdown|m?md)&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!mustache-code" String="&fcode;\s*(?:handlebars|hbs|mustache|mst|ractive|hogan|hulk)&end;" insensitive="true"/> <!-- Included in the HTML definition -->+        <RegExpr attribute="Fenced Code" context="#pop!perl-code" String="&fcode;\s*(?:perl|p[lm]|pod|psgi|vcl|perl6|p[lm]?6|nqp)&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!php-code" String="&fcode;\s*(?:php[3457t]?|wml|phtml?|aw|ctp)&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!python-code" String="&fcode;\s*(?:python[23]?|py[23w]?|[rc]py|sconstruct|gypi?)&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!qml-code" String="&fcode;\s*qml(?:types)?&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!r-code" String="&fcode;\s*(?:r|rprofile|rscript)&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!rest-code" String="&fcode;\s*(?:rst|rest|restructuredtext)&end;" insensitive="true"/> <!-- Included in the CMake definition -->+        <RegExpr attribute="Fenced Code" context="#pop!ruby-code" String="&fcode;\s*(?:ruby|rbx?|rjs|rake|f?cgi|gemspec|irbrc|ru|prawn|Appraisals|(?:Rake|Cap|Chef|Gem|Guard|Hobo|Vagrant||Rant|Berks|Thor|Puppet)file|rxml|(?:xml|js)\.erb)&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!rust-code" String="&fcode;\s*(?:rust|rs)&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!mysql-code" String="&fcode;\s*(?:mysql|sql|ddl)&end;" insensitive="true"/> <!-- Included in the PHP definition -->+        <RegExpr attribute="Fenced Code" context="#pop!typescript-code" String="&fcode;\s*(?:typescript|ts)&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!xml-code" String="&fcode;\s*(?:xml|xsd|xspf|tld|jsp|c?pt|dtml|rss|opml|svg|daml|rdf|ui|kcfg|qrc|wsdl|scxml|xbel|dae|sch|brd|docbook)&end;" insensitive="true"/>+        <RegExpr attribute="Fenced Code" context="#pop!code" String="&fcode;.*$"/>       </context>-      <context attribute="code" lineEndContext="#stay" name="code">-        <WordDetect attribute="code" context="#pop" String="```"/>+      <context name="code" attribute="Code" lineEndContext="#stay"> <!-- Unknown language -->+        <RegExpr attribute="Fenced Code" context="#pop" String="%1[~`]*(?=&end;)" firstNonSpace="true" dynamic="true" endRegion="code-block"/>       </context>-      <context attribute="common" name="inc" lineEndContext="#stay">-        <RegExpr attribute="code" String="`[^`]+`"/>-        <RegExpr context="comment" String="&lt;!--" beginRegion="comment"/>-        <RegExpr attribute="reflink" String="&reflinkregex;"/>-        <RegExpr attribute="footnote" String="&footnoteregex;"/>-        <RegExpr attribute="inlinelink" String="&inlinelinkregex;"/>-        <RegExpr attribute="reflinktarget" String="&reflinktargetregex;"/>-        <RegExpr attribute="inlineimage" String="&inlineimageregex;"/>-        <RegExpr attribute="refimage" String="&refimageregex;"/>-        <RegExpr attribute="autolink" String="&autolinkregex;"/>-        <RegExpr attribute="mailtolink" String="&mailtolinkregex;"/>-        <RegExpr attribute="strikeout" minimal="true" String="&strikeoutregex;"/>-        <RegExpr attribute="linebreak" minimal="true" String="&linebreakregex;"/>-        <WordDetect attribute="code" context="php-code" String="```php"/>-        <WordDetect attribute="code" context="python-code" String="```python"/>-        <StringDetect attribute="code" context="code" String="```"/>+      <context attribute="Normal Text" lineEndContext="#stay" name="bash-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##Bash" includeAttrib="true"/>       </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="cmake-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##CMake" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="c-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##C" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="cpp-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##C++" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="csharp-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##C#" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="css-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##CSS" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="doxygen-code">+        <IncludeRules context="code"/>+        <IncludeRules context="BlockComment##Doxygen" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="email-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##Email" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="go-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##Go" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="hamlet-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##Hamlet" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="haskell-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##Haskell" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="html-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##HTML" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="java-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##Java" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="javascript-code">+        <IncludeRules context="code"/>+        <IncludeRules context="Normal##JavaScript" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="jsx-code">+        <IncludeRules context="code"/>+        <IncludeRules context="Normal##JavaScript React (JSX)" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="json-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##JSON" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" lineEmptyContext="find-code-block" name="markdown-code">+        <IncludeRules context="code"/>+        <IncludeRules context="Normal Text"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="matlab-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##Matlab" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="mustache-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##Mustache/Handlebars (HTML)" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="perl-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##Perl" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="php-code">+        <IncludeRules context="code"/>+        <IncludeRules context="phpsource##PHP/PHP" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="python-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##Python" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="qml-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##QML" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="r-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##R Script" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="rest-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##reStructuredText" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="ruby-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##Ruby" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="rust-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##Rust" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="mysql-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##SQL (MySQL)" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="typescript-code">+        <IncludeRules context="code"/>+        <IncludeRules context="Normal##TypeScript" includeAttrib="true"/>+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="xml-code">+        <IncludeRules context="code"/>+        <IncludeRules context="##XML" includeAttrib="true"/>+      </context>++      <!-- Common -->+      <context name="inc" attribute="Normal Text" lineEndContext="#stay">+        <!-- Code -->+        <RegExpr attribute="Code" String="`[^`]+`(?!`)"/>+        <RegExpr attribute="Code" minimal="true" String="`{2}[^`](?:.*[^`])?`{2}(?!`)"/>+        <RegExpr attribute="Code" minimal="true" String="`{3}[^`](?:.*[^`])?`{3}(?!`)"/>+        <RegExpr attribute="Code" minimal="true" String="`{4}[^`](?:.*[^`])?`{4}(?!`)"/>+        <RegExpr attribute="Code" minimal="true" String="`{5,}[^`](?:.*[^`])?`{5,}"/>+        <!-- Find Fenced Code Block -->+        <RegExpr attribute="Fenced Code" context="find-lang-fenced-code" String="`{3,}(?=[^`]*$)" firstNonSpace="true" lookAhead="true" beginRegion="code-block"/>+        <RegExpr attribute="Fenced Code" context="find-lang-fenced-code" String="~{3,}(?=[^~]*$)" firstNonSpace="true" lookAhead="true" beginRegion="code-block"/>+        <!-- Comment -->+        <StringDetect attribute="Comment" context="comment" String="&startcomment;" beginRegion="comment"/>+        <!-- Links and References -->+        <RegExpr attribute="Reference-Link Target" context="reflinktarget" String="&reflinktargetregex;" firstNonSpace="true"/>+        <RegExpr attribute="Footnote" String="&footnoteregex;"/>+        <RegExpr attribute="Reference-Link" context="find-reflink" String="&reflinkregex;"/>+        <RegExpr attribute="Inline Image" context="inlineimage" String="&inlineimageregex;"/>+        <RegExpr attribute="Reference Image" String="&refimageregex;"/>+        <RegExpr attribute="Auto-Link" context="autolink" String="&autolinkregex;" lookAhead="true"/>+        <RegExpr attribute="Mailto-Link" context="mailtolink" String="&mailtolinkregex;"/>+        <!-- Line Break -->+        <RegExpr attribute="Line Break" minimal="true" String="&linebreakregex;"/>+        <!-- Backslash Escapes -->+        <Detect2Chars attribute="Backslash Escape" char="\" char1="\"/>+        <Detect2Chars attribute="Backslash Escape" char="\" char1="`"/>+        <Detect2Chars attribute="Backslash Escape" char="\" char1="*"/>+        <Detect2Chars attribute="Backslash Escape" char="\" char1="_"/>+        <Detect2Chars attribute="Backslash Escape" char="\" char1="{"/>+        <Detect2Chars attribute="Backslash Escape" char="\" char1="}"/>+        <Detect2Chars attribute="Backslash Escape" char="\" char1="["/>+        <Detect2Chars attribute="Backslash Escape" char="\" char1="]"/>+        <Detect2Chars attribute="Backslash Escape" char="\" char1="("/>+        <Detect2Chars attribute="Backslash Escape" char="\" char1=")"/>+        <Detect2Chars attribute="Backslash Escape" char="\" char1="#"/>+        <Detect2Chars attribute="Backslash Escape" char="\" char1="+"/>+        <Detect2Chars attribute="Backslash Escape" char="\" char1="-"/>+        <Detect2Chars attribute="Backslash Escape" char="\" char1="."/>+        <Detect2Chars attribute="Backslash Escape" char="\" char1="!"/>+        <Detect2Chars attribute="Backslash Escape" char="\" char1="&lt;"/>+        <Detect2Chars attribute="Backslash Escape" char="\" char1="&gt;"/>+        <Detect2Chars attribute="Backslash Escape" char="\" char1="&amp;"/>+        <!-- Inline HTML -->+        <RegExpr attribute="EntityRef" String="&amp;(?:#[0-9]+|#[xX][0-9A-Fa-f]+|&htmlname;);"/>+        <RegExpr context="find-html-block" String="&lt;/?&htmlname;(?:[\s&gt;]|/&gt;|$)" lookAhead="true"/>+      </context>+      <context name="find-html-block" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+        <IncludeRules context="FindSpecialHTMLTags##HTML"/>+        <IncludeRules context="FindHTMLTags##HTML"/>+      </context>++      <!-- Links and email: <https://example.com>, <example@kde.org> -->+      <context name="autolink" attribute="Auto-Link" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+        <DetectChar attribute="Auto-Link" char="&lt;"/>+        <DetectChar attribute="Auto-Link" context="#pop" char="&gt;"/>+        <RegExpr attribute="Link" String="&startlink;[^&quot;&gt;\s]+"/>+      </context>+      <context name="mailtolink" attribute="Email" lineEndContext="#pop">+        <DetectChar attribute="Mailto-Link" context="#pop" char="&gt;"/>+      </context>++      <!-- References: [example][id], [example](http://example.com) -->+      <context name="find-reflink" attribute="Reference-Link Name" lineEndContext="#pop">+        <Detect2Chars attribute="Reference-Link Name" char="\" char1="]"/>+        <RegExpr attribute="Reference-Link" context="#pop!find-reflink-id" String="\](?=&reflinkidregex;)"/> <!-- Find id -->+        <DetectChar attribute="Reference-Link" context="#pop" char="]"/>+        <!-- Image as link or reference -->+        <RegExpr attribute="Inline Image" context="inlineimage" String="&startinlineimage;(?=&endinlineimage;&refchar;*\])"/>+        <RegExpr attribute="Reference Image" String="&refimageregex;(?=&refchar;*\])"/>+        <RegExpr attribute="Reference-Link Name" context="#stay" String="(?:\[(?:\\.|[^\[\]\\])*\](?:\\.|[^\[\]\\])*)+(?=\])" minimal="true"/>+      </context>+      <context name="find-reflink-id" attribute="Reference-Link" lineEndContext="#pop">+        <DetectSpaces />+        <!-- Ref.: [an example][id] "Optional title" -->+        <DetectChar attribute="Reference-Link" context="#pop!reflink-id" char="["/>+        <!-- Inline Ref.: [an example](http://example.com/ "Title") -->+        <DetectChar attribute="Reference-Link" context="#pop!reflink-inline-id" char="("/>+      </context>+      <context name="reflink-inline-id" attribute="Reference-Link" lineEndContext="#pop">+        <Detect2Chars attribute="Reference-Link" char="\" char1=")"/>+        <DetectChar attribute="Reference-Link" context="#pop" char=")"/>+        <RegExpr attribute="Reference-Link: Link" String="\b&startlink;(?:\\.|[^&quot;&gt;\s\)\\])+"/>+        <RegExpr attribute="Reference-Link: Email" String="\b&email;\b"/>+      </context>+      <context name="reflink-id" attribute="Reference-Link ID" lineEndContext="#pop">+        <Detect2Chars attribute="Reference-Link ID" char="\" char1="]"/>+        <DetectChar attribute="Reference-Link" context="#pop!reflink-title" char="]"/>+        <RegExpr attribute="Reference-Link: Link" String="\b&startlink;(?:\\.|[^&quot;&gt;\s\]\\])+"/>+      </context>+      <!-- [an example][id] "title" -->+      <context name="reflink-title" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+        <RegExpr attribute="Reference-Link" context="#pop" String="\s+&quot;(?:\\.|[^&quot;\\])*&quot;"/>+      </context>++      <!-- Target Ref.: [foo]: http://example.com/  "Optional Title Here" -->+      <context name="reflinktarget" attribute="Reference-Link Target" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+        <RegExpr attribute="Reference-Link Target: Link" context="#pop!reflinktarget-title" String="\s*&link;(?=\s|$)"/>+        <RegExpr attribute="Reference-Link Target" context="#pop!reflinktarget-link" String="\s*&lt;(?=&link;&gt;(?:\s|$))"/>+        <RegExpr attribute="Reference-Link Target" context="#pop!reflinktarget-title" String="\s*#[\w\.\:\-]+\b"/>+      </context>+      <context name="reflinktarget-link" attribute="Reference-Link Target" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+        <DetectChar attribute="Reference-Link Target" context="#pop!reflinktarget-title" char="&gt;"/>+        <RegExpr attribute="Reference-Link Target: Link" String="&link;"/>+      </context>+      <context name="reflinktarget-title" attribute="Reference-Link Target" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+        <DetectSpaces attribute="Reference-Link Target"/>+        <RegExpr attribute="Reference-Link Target" context="#pop" String="&quot;(?:\\.|[^&quot;\\])*&quot;"/>+        <RegExpr attribute="Reference-Link Target" context="#pop" String="&apos;(?:\\.|[^&apos;\\])*&apos;"/>+        <RegExpr attribute="Reference-Link Target" context="#pop" String="\((?:\\.|[^\)\\])*\)"/>+      </context>++      <!-- Image -->+      <context name="inlineimage" attribute="Inline Image" lineEndContext="#pop">+        <DetectChar attribute="Inline Image" context="#pop" char=")"/>+        <Detect2Chars attribute="Inline Image" char="\" char1=")"/>+        <RegExpr attribute="Inline Image: Link" String="\b&startlink;(?:\\.|[^&quot;&gt;\s\)\\])+"/>+      </context>     </contexts>     <itemDatas>       <itemData name="Normal Text" defStyleNum="dsNormal"/>-      <itemData name="common" defStyleNum="dsNormal"/>-      <itemData name="strongemphasis" defStyleNum="dsNormal" italic="true" bold="true"/>-      <itemData name="emphasis" defStyleNum="dsNormal" italic="true"/>-      <itemData name="strong" defStyleNum="dsNormal" bold="true"/>-      <itemData name="ruler" defStyleNum="dsNormal" bold="true"/>-      <itemData name="strikeout" defStyleNum="dsNormal" strikeOut="true"/>-      <itemData name="linebreak" defStyleNum="dsNormal" underline="true" color="#999999"/>-      <itemData name="h1" defStyleNum="dsFunction" bold="true"/>-      <itemData name="h2" defStyleNum="dsFunction" bold="true"/>-      <itemData name="h3" defStyleNum="dsFunction" bold="true"/>-      <itemData name="h4" defStyleNum="dsFunction" bold="true"/>-      <itemData name="h5" defStyleNum="dsFunction" bold="true"/>-      <itemData name="h6" defStyleNum="dsFunction" bold="true"/>-      <itemData name="blockquote" defStyleNum="dsDataType"/>-      <itemData name="bq-emphasis" defStyleNum="dsDataType" italic="true"/>-      <itemData name="bq-strong" defStyleNum="dsDataType" bold="true"/>-      <itemData name="bullet" defStyleNum="dsFloat"/>-      <itemData name="bl-emphasis" defStyleNum="dsFloat" italic="true"/>-      <itemData name="bl-strong" defStyleNum="dsFloat" bold="true"/>-      <itemData name="numlist" defStyleNum="dsFloat"/>-      <itemData name="nl-emphasis" defStyleNum="dsFloat" italic="true"/>-      <itemData name="nl-strong" defStyleNum="dsFloat" bold="true"/>-      <itemData name="comment" defStyleNum="dsComment"/>-      <itemData name="code" defStyleNum="dsBaseN"/>-      <itemData name="reflink" defStyleNum="dsOthers" underline="true"/>-      <itemData name="inlinelink" defStyleNum="dsOthers" underline="true"/>-      <itemData name="autolink" defStyleNum="dsOthers" underline="true"/>-      <itemData name="mailtolink" defStyleNum="dsOthers" underline="true"/>-      <itemData name="footnote" defStyleNum="dsOthers" italic="true"/>-      <itemData name="meta" defStyleNum="dsComment"/>-      <itemData name="reflinktarget" defStyleNum="dsOthers" italic="false" bold="false"/>-      <itemData name="inlineimage" defStyleNum="dsAlert" italic="false" bold="false"/>-      <itemData name="refimage" defStyleNum="dsAlert" italic="false" bold="false"/>+      <itemData name="Emphasis Text" defStyleNum="dsNormal" italic="true"/>+      <itemData name="Strong Text" defStyleNum="dsNormal" bold="true"/>+      <itemData name="Strong-Emphasis Text" defStyleNum="dsNormal" italic="true" bold="true"/>+      <itemData name="Strikethrough Text" defStyleNum="dsNormal" strikeOut="true"/>+      <itemData name="Normal Text: Link" defStyleNum="dsNormal" underline="true" spellChecking="false"/>+      <itemData name="Horizontal Rule" defStyleNum="dsNormal" bold="true" spellChecking="false"/>+      <itemData name="Line Break" defStyleNum="dsNormal" underline="true" color="#999999" spellChecking="false"/>+      <itemData name="Header H1" defStyleNum="dsFunction" bold="true"/>+      <itemData name="Header H2" defStyleNum="dsFunction" bold="true"/>+      <itemData name="Header H3" defStyleNum="dsFunction" bold="true"/>+      <itemData name="Header H4" defStyleNum="dsFunction" bold="true"/>+      <itemData name="Header H5" defStyleNum="dsFunction" bold="true"/>+      <itemData name="Header H6" defStyleNum="dsFunction" bold="true"/>+      <itemData name="Blockquote" defStyleNum="dsAttribute" spellChecking="false"/>+      <itemData name="Blockquote: Normal Text" defStyleNum="dsAttribute"/>+      <itemData name="Blockquote: Emphasis Text" defStyleNum="dsAttribute" italic="true"/>+      <itemData name="Blockquote: Strong Text" defStyleNum="dsAttribute" bold="true"/>+      <itemData name="Blockquote: Strong-Emphasis Text" defStyleNum="dsAttribute" italic="true" bold="true"/>+      <itemData name="Blockquote: Strikethrough Text" defStyleNum="dsAttribute" strikeOut="true"/>+      <itemData name="Blockquote: Link" defStyleNum="dsAttribute" underline="true" spellChecking="false"/>+      <itemData name="List" defStyleNum="dsSpecialString" bold="1" spellChecking="false"/>+      <itemData name="Number List" defStyleNum="dsSpecialString" spellChecking="false"/>+      <itemData name="List: Normal Text" defStyleNum="dsNormal"/>+      <itemData name="List: Emphasis Text" defStyleNum="dsNormal" italic="true"/>+      <itemData name="List: Strong Text" defStyleNum="dsNormal" bold="true"/>+      <itemData name="List: Strong-Emphasis Text" defStyleNum="dsNormal" italic="true" bold="true"/>+      <itemData name="List: Strikethrough Text" defStyleNum="dsNormal" strikeOut="true"/>+      <itemData name="List: Link" defStyleNum="dsNormal" underline="true" spellChecking="false"/>+      <itemData name="List: Checkbox" defStyleNum="dsVariable" spellChecking="false"/>+      <itemData name="Comment" defStyleNum="dsComment"/>+      <itemData name="Code" defStyleNum="dsInformation"/>+      <itemData name="Fenced Code" defStyleNum="dsInformation" spellChecking="false"/>+      <itemData name="Auto-Link" defStyleNum="dsOthers" spellChecking="false"/>+      <itemData name="Link" defStyleNum="dsOthers" underline="true" spellChecking="false"/>+      <itemData name="Mailto-Link" defStyleNum="dsOthers" spellChecking="false"/>+      <itemData name="Email" defStyleNum="dsOthers" italic="true" underline="true" spellChecking="false"/>+      <itemData name="Footnote" defStyleNum="dsOthers" italic="true"/>+      <itemData name="Reference-Link" defStyleNum="dsComment" italic="false"/>+      <itemData name="Reference-Link Name" defStyleNum="dsOthers" underline="true" italic="false"/>+      <itemData name="Reference-Link ID" defStyleNum="dsComment" italic="false"/>+      <itemData name="Reference-Link: Link" defStyleNum="dsComment" underline="true" italic="false" spellChecking="false"/>+      <itemData name="Reference-Link: Email" defStyleNum="dsComment" italic="true" underline="true" spellChecking="false"/>+      <itemData name="Reference-Link Target" defStyleNum="dsOthers" italic="false" bold="false"/>+      <itemData name="Reference-Link Target: Link" defStyleNum="dsOthers" underline="true" spellChecking="false"/>+      <itemData name="Inline Image" defStyleNum="dsAlert" italic="false" bold="false"/>+      <itemData name="Reference Image" defStyleNum="dsAlert" italic="false" bold="false"/>+      <itemData name="Inline Image: Link" defStyleNum="dsAlert" italic="false" bold="false" underline="true"/>+      <itemData name="Metadata Title" defStyleNum="dsAnnotation"/>+      <itemData name="Metadata" defStyleNum="dsComment" italic="0"/>+      <itemData name="Backslash Escape" defStyleNum="dsSpecialChar" spellChecking="false"/>+      <itemData name="EntityRef" defStyleNum="dsDecVal" spellChecking="false"/>     </itemDatas>   </highlighting>   <general>+    <keywords additionalDeliminator="`"/>     <comments>-      <comment name="multiLine" start="&lt;!--" end="--&gt;" region="comment"/>+      <comment name="multiLine" start="&startcomment;" end="&endcomment;" region="comment"/>     </comments>   </general> </language>+<!-- kate: replace-tabs on; indent-width 2; tab-width 2; -->
syntax/matlab.xml view
@@ -57,7 +57,7 @@  <!DOCTYPE language SYSTEM "language.dtd"> -<language name="Matlab" version="2" kateversion="2.2" section="Scientific" extensions="*.m;*.M" mimetype="text/mfile" casesensitive="1">+<language name="Matlab" version="3" kateversion="5.0" section="Scientific" extensions="*.m;*.M" mimetype="text/mfile" casesensitive="1">   <highlighting>      <!-- Reserved keywords in MATLAB -->@@ -98,8 +98,10 @@         <RegExpr context="_adjoint" attribute="Operator" String="\.'(?=')" />          <!-- If ' is not the adjoint operator, it starts a string or an unterminated string -->-        <RegExpr context="#stay" attribute="String" String="'[^']*(''[^']*)*'(?=[^']|$)" />-        <RegExpr context="#stay" attribute="Incomplete String" String="'[^']*(''[^']*)*" />+        <RegExpr context="#stay" attribute="CharVector" String="'[^']*(''[^']*)*'(?=[^']|$)" />+        <RegExpr context="#stay" attribute="Incomplete CharVector" String="'[^']*(''[^']*)*" />+        <RegExpr context="#stay" attribute="String" String="&quot;[^&quot;]*(&quot;&quot;[^&quot;]*)*&quot;(?=[^&quot;]|$)" />+        <RegExpr context="#stay" attribute="Incomplete String" String="&quot;[^&quot;]*(&quot;&quot;[^&quot;]*)*" />          <!-- Handling of keywords, comments, system commands, identifiers, numbers and braces -->         <keyword context="#stay" attribute="Keyword" String="KeywordsList" />@@ -136,25 +138,18 @@      <itemDatas>       <itemData name="Normal Text" defStyleNum="dsNormal" />-      <itemData name="Variable" defStyleNum="dsNormal" />-      <itemData name="Operator" defStyleNum="dsNormal"/>+      <itemData name="Variable" defStyleNum="dsVariable" />+      <itemData name="Operator" defStyleNum="dsOperator"/>       <itemData name="Number" defStyleNum="dsFloat" />       <itemData name="Delimiter" defStyleNum="dsNormal" />-      <itemData name="String" defStyleNum="dsString" color="#b20000"/>-      <itemData name="System" defStyleNum="dsBaseN" color="#b28c00"/>-      <itemData name="Incomplete String" defStyleNum="dsChar" color="#a020f0"/>-      <itemData name="Keyword"  defStyleNum="dsNormal" color="#0000ff"/>-      <itemData name="Comment" defStyleNum="dsComment" color="#009900"/>+      <itemData name="CharVector" defStyleNum="dsSpecialString" />+      <itemData name="String" defStyleNum="dsString" />+      <itemData name="System" defStyleNum="dsBaseN" />+      <itemData name="Incomplete CharVector" defStyleNum="dsError" />+      <itemData name="Incomplete String" defStyleNum="dsError" />+      <itemData name="Keyword"  defStyleNum="dsKeyword" />+      <itemData name="Comment" defStyleNum="dsComment" />     </itemDatas>-    <!-- MATLAB 6.5 default color scheme-          keywords             #0000ff-          comments             #228b22-          strings              #b20000-          unterminated strings #a020f0-          system commands      #b28c00-          errors               #ff0000-          all others           #000000-    -->    </highlighting> @@ -166,65 +161,3 @@   </general>  </language>-<!---%%=====================================================-% MATLAB test code for Kate/Kwrite syntax highlighting-%%=====================================================--% Numbers _____________________________________________-5, 5.5, .1, 0.1, 0.4e5, 1.2e-5, 5i, 5.3i, 6j, .345+3i-5', 5.5', .1', 0.1', 0.4e5', 1.2e-5', 5i', 5.3i', 6j', .345+3i'--% Operators ___________________________________________-% relational operators-'asdf'~=4, c<=4, d>=4, a<b, a>b, a==b, b||c, b&&c-% elementwise arithmetic operators-a.^b, a.*b a./b, 1:4:5-% single-character binary arithmetic-a+3, a-3, a*2, a^3, a/3, a\3, a|b, a&b-% unary operators-a = ~g; g = @sfdgdsf(sdfsd,345); g.' + 1i.' - ('asdf').'-% separators and delimiter-(asd),[sadf];{asdf},;;,;;;()-% continuation-a = 1+ ...-  2;--% Strings and adjoint _________________________________-% incomplete strings-'string-'str''-'str''ing-% complete strings-'string' % simple string-'''' % string containing '-'str''ing' % one string containing '-'string' 'string'  % two strings-'asdf'  'asdf''' variable  % two strings and a variable-'asdf''asdf''   fsgdfg' + (asdf)' - 'asdf'.' + []''''.';''-'sadf'.' % string transpose-% adjoint-{'asdf'}' + 1-('asdf')' + 1-['asdf']' + 1-'' var''' % empty string, var with >1 adjoints-[5]'*{5}'*('asd')'.'+(5)'*6'*asdf'*asdf'.'  % many adjoints-A'*B + 1      % adjoint-A.'*B + 1     % transpose-A.'.'*B + 1   % double transpose-A'.' + 1      % adjoint, then transpose-A.''          % transpose, then adjoint--% System command ______________________________________-!hostname-!cp * /tmp--% Reserved keywords ___________________________________-function, persistent, global-switch, case, otherwise-if, else, elseif-try, catch-for, while, break, continue-end, return-function, FUNCTION, Function  % case sensitive!--->
syntax/mediawiki.xml view
@@ -6,7 +6,7 @@   <!ENTITY wikiLinkWithDescription "\[\[[^]|]*\|[^]]*\]\]">   <!ENTITY wikiLinkWithoutDescription "\[\[[^]|]*\]\]"> ]>-<language name="MediaWiki" section="Markup" version="5" kateversion="3.4" extensions="*.mediawiki" mimetype="" license="FDL" >+<language name="MediaWiki" section="Markup" version="6" kateversion="5.0" extensions="*.mediawiki" mimetype="" license="FDL" >   <highlighting>     <contexts>       <context attribute="Normal" lineEndContext="#stay" name="normal" >
syntax/modelines.xml view
@@ -8,7 +8,7 @@   Copyright (c) 2012-2014 by Alex Turbov (i.zaufi@gmail.com)   --> <language name="Modelines"-          version="4"+          version="5"           kateversion="5.0"           section="Other"           extensions=""@@ -130,10 +130,10 @@     <context name="Normal" attribute="Comment" lineEndContext="#pop">       <DetectSpaces />       <keyword String="ModelineStartKeyword" context="Modeline" attribute="Keyword" />-      <RegExpr String="kate-(mimetype|wildcard)\(.*\):" context="Modeline" attribute="Keyword" />+      <RegExpr String="kate-(?:mimetype|wildcard)\(.*\):" context="Modeline" attribute="Keyword" />     </context> -    <context name="Modeline" attribute="Comment" lineEndContext="#pop">+    <context name="Modeline" attribute="Comment" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">       <DetectSpaces />       <keyword String="Booleans" context="Booleans" attribute="Variable" />       <keyword String="Integrals" context="Integrals" attribute="Variable" />@@ -142,7 +142,7 @@       <LineContinue context="#pop" />     </context> -    <context name="Booleans" attribute="Comment" lineEndContext="#pop">+    <context name="Booleans" attribute="Comment" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">       <DetectSpaces />       <keyword String="True" attribute="Option ON" context="#stay" />       <keyword String="False" attribute="Option OFF" context="#stay" />@@ -150,7 +150,7 @@       <LineContinue context="#pop" />     </context> -    <context name="Integrals" attribute="Comment" lineEndContext="#pop">+    <context name="Integrals" attribute="Comment" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">       <DetectSpaces />       <Int attribute="Number" context="#stay" />       <DetectChar char="&end;" context="#pop" attribute="Variable" />@@ -164,13 +164,13 @@       <LineContinue context="#pop" />     </context> -    <context name="RemoveSpaces" attribute="Comment" lineEndContext="#pop">+    <context name="RemoveSpaces" attribute="Comment" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">       <DetectSpaces />       <keyword String="RemoveSpacesOptions" attribute="Value" context="#pop!RemoveSpacesEnd" />       <DetectChar char="&end;" context="#pop" attribute="Variable" />       <LineContinue context="#pop" />     </context>-    <context name="RemoveSpacesEnd" attribute="Comment" lineEndContext="#pop">+    <context name="RemoveSpacesEnd" attribute="Comment" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">       <DetectChar char="&end;" context="#pop" attribute="Variable" />     </context> 
+ syntax/mustache.xml view
@@ -0,0 +1,471 @@+<?xml version="1.0" encoding="UTF-8"?>+<!DOCTYPE language SYSTEM "language.dtd"+[+	<!ENTITY name          "[A-Za-z_:][\w.:_-]*">+	<!ENTITY attributeName "(?:\s|^)[A-Za-z_:\*#\(\[][\)\]\w\.:_-]*">+	<!ENTITY entref        "&amp;(?:#[0-9]+|#[xX][0-9A-Fa-f]+|&name;);">+	<!ENTITY tag           "&lt;\s*(?:&name;|&gt;)">+	<!-- Handlebars identifier -->+	<!ENTITY identifier    "(?:[a-zA-Z_$:\?]|[^[:ascii:]])(?:[\w$:\?\-]|[^[:ascii:]])*">+]>++<!--+    Syntax Highlighting Defintion of+    Mustache / Handlebars / Ractive templates for Kate.+   ================================================================+    This file is part of the KDE's KSyntaxHighlighting framework.++    Based on the HTML syntax highlighting file, by Wilbert+    Berendsen (wilbert@kde.nl), and in the Mustache syntax files+    for Vim, available at:+      https://github.com/mustache/vim-mustache-handlebars++    This highlighter is also applicable to the templates of+    Ractive.js, Hogan.js and Hulk.js.++    This file is also used within the HTML highlighter,+    inside the <script> tags.++    FIXME: The support of Mustache variables in CSS is incomplete,+    since variables aren't highlighted in many contexts.+    This highlighter doesn't offer support for TypeScript and JSX+    in the <script> tag.++    TODO: This code can be generated by a script, in the same way+    as the PHP highlight, injecting the "MustacheVariables" context+    (via IncludeRules) in the HTML highlighter.++    Change log:+     * v3 [2019-10-03]: Minor fixes.+     * v2 [2019-02-24]: Also highlight template files (HTML).+                        Improve support for Handlebars.+     * v1 [2019-02-10]: Initial version+-->++<language name="Mustache/Handlebars (HTML)" version="3" kateversion="5.44"+          section="Markup" priority="1" mimetype=""+          extensions="*.mustache;*.handlebars;*.hbs;*.ractive;*.hogan;*.hulk;*.html.mst;*.html.mu;*.html.rac"+          author="Nibaldo González (nibgonz@gmail.com), based on the HTML highlighter by Wilbert Berendsen (wilbert@kde.nl)"+          license="MIT">++<highlighting>++	<contexts>++		<context name="Normal" attribute="Normal Text" lineEndContext="#stay">+			<RegExpr context="CSS" attribute="Element Tag" String="&lt;style\b" insensitive="true" beginRegion="style" />+			<RegExpr context="JS" attribute="Element Tag" String="&lt;script\b" insensitive="true" beginRegion="script" />+			<IncludeRules context="Base" />+		</context>++		<!-- NOTE: Include this context within the <script> tag in the HTML highlighter -->+		<context name="Base" attribute="Normal Text" lineEndContext="#stay">+			<IncludeRules context="MustacheVariables" />++			<StringDetect context="CDATA" attribute="CDATA" String="&lt;![CDATA[" beginRegion="cdata" />+			<RegExpr context="Doctype" attribute="Doctype" String="&lt;!DOCTYPE\s+" insensitive="true" beginRegion="doctype"  />+			<IncludeRules context="FindPI" />++			<IncludeRules context="FindTags" />+			<IncludeRules context="FindElementTagEnd" />+			<IncludeRules context="FindComments" />+			<IncludeRules context="FindDTDRules" />+			<IncludeRules context="FindEntityRefs" />+		</context>++		<!-- Mustache/Handlebars Variables -->++		<context name="MustacheVariables" attribute="Normal Text" lineEndContext="#stay">+			<StringDetect context="#stay" attribute="Normal Text" String="\{{" />+			<Detect2Chars context="StartMustacheVariable" char="{" char1="{" lookAhead="true" />+		</context>+		<context name="StartMustacheVariable" attribute="Normal Text" lineEndContext="#stay">+			<!-- Escaped -->+			<RegExpr context="#pop!MustacheRawBlockContent" attribute="Mustache Block" String="\{{4}[^/].*\}{4}" minimal="true" beginRegion="HandlebarsRawBlock" />+			<!-- Sections -->+			<!-- For helpers (not included because it's redundant):+			       Start: \{\{~?#?\s*(?=(if|unless|with|link\-to|each(\-in)?)\b)+			       End:   \{\{~?/\s*(?=(if|unless|with|link\-to|each(\-in)?)\b)  -->+			<RegExpr context="#pop!MustacheVariableBlock" attribute="Mustache Block" String="\{\{~?\s*else(?:\s+(?:if|unless|with|link\-to|each(?:\-in)?))?\b" />+			<RegExpr context="#pop!MustacheVariableBlock" attribute="Mustache Block" String="\{\{~?[#\^][&gt;\*]?\s*&identifier;\b" beginRegion="MustacheBlock" />+			<RegExpr context="#pop" attribute="Mustache Block" String="\{\{~?/\s*&identifier;\s*\}\}" endRegion="MustacheBlock" />+			<RegExpr context="#pop!MustacheVariableBlockEndFolding" attribute="Mustache Block" String="\{\{~?/\s*&identifier;\b" />+			<RegExpr context="#pop!MustacheVariableBlock" attribute="Mustache Block" String="\{\{~?[#\^/]" />+			<!-- Comments -->+			<StringDetect context="#pop!MustacheBlockComment" attribute="Comment" String="{{!--" beginRegion="MustacheBlockComment" /> <!-- Handlebars -->+			<StringDetect context="#pop!MustacheInlineComment" attribute="Comment" String="{{!" beginRegion="MustacheInlineComment" />+			<!-- Variables -->+			<StringDetect context="#pop!MustachePartial" attribute="Mustache Variable" String="{{&lt;" />+			<StringDetect context="#pop!MustachePartial" attribute="Mustache Variable" String="{{&gt;" />+			<StringDetect context="#pop!MustacheMarkerSet" attribute="Mustache Variable" String="{{=" />+			<StringDetect context="#pop!MustacheVariable" attribute="Mustache Variable" String="{{$" />+			<RegExpr context="#pop!MustacheVariableUnescape" attribute="Mustache Variable Unescape" String="\{\{\{\s*(?:log|link)\b" />+			<RegExpr context="#pop!MustacheVariable" attribute="Mustache Variable" String="\{\{\s*(?:log|link)\b" />++			<StringDetect context="#pop!MustacheVariableUnescape" attribute="Mustache Variable Unescape" String="{{{" />+			<Detect2Chars context="#pop!MustacheVariable" attribute="Mustache Variable" char="{" char1="{" />+		</context>++		<context name="MustacheRawBlockContent" attribute="Normal Text" lineEndContext="#stay">+			<RegExpr context="#pop" attribute="Mustache Block" String="\{{4}/.*\}{4}" minimal="true" endRegion="HandlebarsRawBlock" />+		</context>++		<context name="MustachePartial" attribute="Mustache Partial" lineEndContext="#stay">+			<Detect2Chars context="#pop" attribute="Mustache Variable" char="}" char1="}" />+			<IncludeRules context="MustacheInside" />+		</context>+		<context name="MustacheMarkerSet" attribute="Mustache Marker Set" lineEndContext="#stay">+			<StringDetect context="#pop" attribute="Mustache Variable" String="=}}" />+		</context>++		<context name="MustacheVariableBlock" attribute="Mustache Inside" lineEndContext="#stay">+			<Detect2Chars context="#pop" attribute="Mustache Block" char="}" char1="}" />+			<IncludeRules context="MustacheInside" />+		</context>+		<context name="MustacheVariableBlockEndFolding" attribute="Mustache Inside" lineEndContext="#stay">+			<Detect2Chars context="#pop" attribute="Mustache Block" char="}" char1="}" endRegion="MustacheBlock" />+			<IncludeRules context="MustacheInside" />+		</context>+		<context name="MustacheVariable" attribute="Mustache Inside" lineEndContext="#stay">+			<Detect2Chars context="#pop" attribute="Mustache Variable" char="}" char1="}" />+			<IncludeRules context="MustacheInside" />+		</context>+		<context name="MustacheVariableUnescape" attribute="Mustache Inside" lineEndContext="#stay">+			<StringDetect context="#pop" attribute="Mustache Variable Unescape" String="}}}" />+			<IncludeRules context="MustacheInside" />+		</context>++		<!-- Within the variable -->+		<context name="MustacheInside" attribute="Mustache Inside" lineEndContext="#pop">+			<DetectChar context="MustacheStringDQ" attribute="String" char="&quot;" />+			<DetectChar context="MustacheStringSQ" attribute="String" char="&apos;" />+			<AnyChar context="#stay" attribute="Symbol" String=".[]|" />+			<RegExpr context="MustacheSymbolValue" attribute="Attribute" String="&attributeName;(?=\s*\=)" />+		</context>+		<context name="MustacheStringDQ" attribute="String" lineEndContext="#pop">+			<DetectChar context="#pop" attribute="String" char="&quot;" />+			<LineContinue context="#stay" attribute="Escape" />+			<HlCStringChar context="#stay" attribute="Escape" />+		</context>+		<context name="MustacheStringSQ" attribute="String" lineEndContext="#pop">+			<DetectChar context="#pop" attribute="String" char="&apos;" />+			<LineContinue context="#stay" attribute="Escape" />+			<HlCStringChar context="#stay" attribute="Escape" />+		</context>+		<context name="MustacheSymbolValue" attribute="Mustache Inside" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+			<DetectChar context="#pop!MustacheValue" attribute="Symbol" char="=" />+			<DetectSpaces />+		</context>+		<context name="MustacheValue" attribute="Mustache Inside" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+			<DetectSpaces />+			<RegExpr context="#pop" attribute="Number" String="\d+(?=[\s\}\)\]]|$)" />+		</context>++		<context name="MustacheBlockComment" attribute="Comment" lineEndContext="#stay">+			<StringDetect context="#pop" attribute="Comment" String="--}}" endRegion="MustacheBlockComment" />+			<IncludeRules context="##Alerts" />+		</context>+		<context name="MustacheInlineComment" attribute="Comment" lineEndContext="#stay">+			<Detect2Chars context="#pop" attribute="Comment" char="}" char1="}" endRegion="MustacheInlineComment" />+			<IncludeRules context="##Alerts" />+		</context>++		<!-- Tags -->++		<!-- Start tag -->+		<context name="FindTags" attribute="Normal Text" lineEndContext="#stay">+			<!-- Common HTML tags (obtained from 'html.xml') -->+			<WordDetect context="ElementTag" attribute="Element Tag" String="&lt;pre" insensitive="true" beginRegion="pre" />+			<WordDetect context="ElementTag" attribute="Element Tag" String="&lt;div" insensitive="true" beginRegion="div" />+			<WordDetect context="ElementTag" attribute="Element Tag" String="&lt;table" insensitive="true" beginRegion="table" />+			<WordDetect context="ElementTag" attribute="Element Tag" String="&lt;ul" insensitive="true" beginRegion="ul" />+			<WordDetect context="ElementTag" attribute="Element Tag" String="&lt;ol" insensitive="true" beginRegion="ol" />+			<WordDetect context="ElementTag" attribute="Element Tag" String="&lt;dl" insensitive="true" beginRegion="dl" />+			<WordDetect context="ElementTag" attribute="Element Tag" String="&lt;article" insensitive="true" beginRegion="article" />+			<WordDetect context="ElementTag" attribute="Element Tag" String="&lt;aside" insensitive="true" beginRegion="aside" />+			<WordDetect context="ElementTag" attribute="Element Tag" String="&lt;details" insensitive="true" beginRegion="details" />+			<WordDetect context="ElementTag" attribute="Element Tag" String="&lt;figure" insensitive="true" beginRegion="figure" />+			<WordDetect context="ElementTag" attribute="Element Tag" String="&lt;footer" insensitive="true" beginRegion="footer" />+			<WordDetect context="ElementTag" attribute="Element Tag" String="&lt;header" insensitive="true" beginRegion="header" />+			<WordDetect context="ElementTag" attribute="Element Tag" String="&lt;main" insensitive="true" beginRegion="main" />+			<WordDetect context="ElementTag" attribute="Element Tag" String="&lt;nav" insensitive="true" beginRegion="nav" />+			<WordDetect context="ElementTag" attribute="Element Tag" String="&lt;section" insensitive="true" beginRegion="section" />++			<RegExpr context="#stay" attribute="Element Tag" String="&lt;\s*&gt;" />+			<RegExpr context="ElementTag" attribute="Element Tag" String="&tag;" />+		</context>+		<context name="FindEntityRefs" attribute="Normal Text" lineEndContext="#stay">+			<RegExpr context="#stay" attribute="EntityRef" String="&entref;" />+		</context>++		<!-- Tag end: </tag> -->+		<context name="FindElementTagEnd" attribute="Normal Text" lineEndContext="#stay">+			<!-- Common HTML tags (obtained from 'html.xml') -->+			<WordDetect context="ElementTagEnd" attribute="Element Tag" String="&lt;/pre" insensitive="true" endRegion="pre" />+			<WordDetect context="ElementTagEnd" attribute="Element Tag" String="&lt;/div" insensitive="true" endRegion="div" />+			<WordDetect context="ElementTagEnd" attribute="Element Tag" String="&lt;/table" insensitive="true" endRegion="table" />+			<WordDetect context="ElementTagEnd" attribute="Element Tag" String="&lt;/ul" insensitive="true" endRegion="ul" />+			<WordDetect context="ElementTagEnd" attribute="Element Tag" String="&lt;/ol" insensitive="true" endRegion="ol" />+			<WordDetect context="ElementTagEnd" attribute="Element Tag" String="&lt;/dl" insensitive="true" endRegion="dl" />+			<WordDetect context="ElementTagEnd" attribute="Element Tag" String="&lt;/article" insensitive="true" endRegion="article" />+			<WordDetect context="ElementTagEnd" attribute="Element Tag" String="&lt;/aside" insensitive="true" endRegion="aside" />+			<WordDetect context="ElementTagEnd" attribute="Element Tag" String="&lt;/details" insensitive="true" endRegion="details" />+			<WordDetect context="ElementTagEnd" attribute="Element Tag" String="&lt;/figure" insensitive="true" endRegion="figure" />+			<WordDetect context="ElementTagEnd" attribute="Element Tag" String="&lt;/footer" insensitive="true" endRegion="footer" />+			<WordDetect context="ElementTagEnd" attribute="Element Tag" String="&lt;/header" insensitive="true" endRegion="header" />+			<WordDetect context="ElementTagEnd" attribute="Element Tag" String="&lt;/main" insensitive="true" endRegion="main" />+			<WordDetect context="ElementTagEnd" attribute="Element Tag" String="&lt;/nav" insensitive="true" endRegion="nav" />+			<WordDetect context="ElementTagEnd" attribute="Element Tag" String="&lt;/section" insensitive="true" endRegion="section" />++			<RegExpr context="#stay" attribute="Element Tag" String="&lt;/\s*&gt;" />+			<RegExpr context="ElementTagEnd" attribute="Element Tag" String="&lt;/\s*&name;" />+		</context>+		<context name="ElementTagEnd" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="#pop" attribute="Element Tag" char="&gt;" />+			<IncludeRules context="MustacheVariables" />+			<RegExpr context="#stay" attribute="Error" String="\S" />+		</context>++		<!-- Inside the tag -->+		<context name="ElementTag" attribute="Normal Text" lineEndContext="#stay">+			<Detect2Chars context="#pop" attribute="Element Tag" char="/" char1="&gt;" />+			<DetectChar context="#pop" attribute="Element Tag" char="&gt;" />+			<IncludeRules context="MustacheVariables" />+			<IncludeRules context="FindAttributes" />+			<RegExpr context="#stay" attribute="Error" String="\S" />+		</context>+		<context name="FindAttributes" attribute="Normal Text" lineEndContext="#stay">+			<RegExpr context="#stay" attribute="Attribute" String="&attributeName;" />+			<RegExpr context="#stay" attribute="Error" String="\=(?=\s*/?&gt;)" />+			<DetectChar context="Value" attribute="Symbol" char="=" />+		</context>++		<context name="Value" attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop!ValueNQ">+			<DetectChar context="#pop!ValueDQ" attribute="Value" char="&quot;" />+			<DetectChar context="#pop!ValueSQ" attribute="Value" char="&apos;" />+			<RegExpr context="#pop" attribute="Number" String="\d+(?=\s|/?&gt;|$)" />+			<DetectSpaces />+		</context>+		<context name="ValueDQ" attribute="Value" lineEndContext="#stay">+			<DetectChar context="#pop" attribute="Value" char="&quot;" />+			<IncludeRules context="MustacheVariables" />+			<IncludeRules context="FindEntityRefs" />+		</context>+		<context name="ValueSQ" attribute="Value" lineEndContext="#stay">+			<DetectChar context="#pop" attribute="Value" char="&apos;" />+			<IncludeRules context="MustacheVariables" />+			<IncludeRules context="FindEntityRefs" />+		</context>+		<context name="ValueNQ" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+			<IncludeRules context="MustacheVariables" />+			<IncludeRules context="FindEntityRefs" />+			<RegExpr context="#stay" attribute="Value" String="/(?!&gt;)" />+			<RegExpr context="#stay" attribute="Value" String="[^/&gt;&lt;&quot;&apos;\s]" />+		</context>++		<!-- HTML -->+		<!-- NOTE: This contexts are duplicated from 'html.xml', adding the Mustache variables -->++		<context name="FindComments" attribute="Normal Text" lineEndContext="#stay">+			<StringDetect context="Comment" attribute="Comment" String="&lt;!--" beginRegion="Comment" />+		</context>+		<context name="Comment" attribute="Comment" lineEndContext="#stay">+			<DetectSpaces/>+			<StringDetect context="#pop" attribute="Comment" String="--&gt;" endRegion="Comment" />+			<RegExpr context="#stay" attribute="Error" String="-(?:-(?!-&gt;))+" />+			<IncludeRules context="MustacheVariables" />+			<IncludeRules context="##Alerts" />+		</context>++		<context name="FindPEntityRefs" attribute="Normal Text" lineEndContext="#stay">+			<RegExpr attribute="EntityRef" context="#stay" String="&entref;" />+			<RegExpr attribute="PEntityRef" context="#stay" String="%&name;;" />+			<AnyChar attribute="Error" context="#stay" String="&amp;%" />+		</context>++		<context name="FindDTDRules" attribute="Normal Text" lineEndContext="#stay">+			<RegExpr context="Doctype Markupdecl" attribute="Doctype" String="&lt;!(?:ELEMENT|ENTITY|ATTLIST|NOTATION)\b" />+		</context>+		<context name="FindPI" attribute="Normal Text" lineEndContext="#stay">+			<RegExpr context="PI" attribute="Processing Instruction" String="&lt;\?[\w:-]*" beginRegion="pi" />+		</context>++		<context name="CDATA" attribute="Normal Text" lineEndContext="#stay">+			<IncludeRules context="MustacheVariables" />+			<StringDetect context="#pop" attribute="CDATA" String="]]&gt;" endRegion="cdata" />+			<StringDetect context="#stay" attribute="EntityRef" String="]]&amp;gt;" />+		</context>++		<context name="PI" attribute="Normal Text" lineEndContext="#stay">+			<IncludeRules context="MustacheVariables" />+			<Detect2Chars context="#pop" attribute="Processing Instruction" char="?" char1="&gt;" endRegion="pi" />+		</context>++		<context name="Doctype" attribute="Normal Text" lineEndContext="#stay">+			<IncludeRules context="MustacheVariables" />+			<DetectChar context="#pop" attribute="Doctype" char="&gt;" endRegion="doctype" />+			<DetectChar context="Doctype Internal Subset" attribute="Doctype" char="[" beginRegion="int_subset" />+		</context>+		<context name="Doctype Internal Subset" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="#pop" attribute="Doctype" char="]" endRegion="int_subset" />+			<IncludeRules context="MustacheVariables" />+			<IncludeRules context="FindDTDRules" />+			<IncludeRules context="FindComments" />+			<IncludeRules context="FindPI" />+			<IncludeRules context="FindPEntityRefs" />+		</context>+		<context name="Doctype Markupdecl" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar attribute="Doctype" context="#pop" char="&gt;" />+			<IncludeRules context="MustacheVariables" />+			<DetectChar attribute="Value" context="Doctype Markupdecl DQ" char="&quot;" />+			<DetectChar attribute="Value" context="Doctype Markupdecl SQ" char="&apos;" />+		</context>+		<context name="Doctype Markupdecl DQ" attribute="Value" lineEndContext="#stay">+			<DetectChar attribute="Value" context="#pop" char="&quot;" />+			<IncludeRules context="MustacheVariables" />+			<IncludeRules context="FindPEntityRefs" />+		</context>+		<context name="Doctype Markupdecl SQ" attribute="Value" lineEndContext="#stay">+			<DetectChar attribute="Value" context="#pop" char="&apos;" />+			<IncludeRules context="MustacheVariables" />+			<IncludeRules context="FindPEntityRefs" />+		</context>++		<!-- CSS -->++		<context name="CSS" attribute="Normal Text" lineEndContext="#stay">+			<Detect2Chars context="#pop" attribute="Element Tag" char="/" char1="&gt;" endRegion="style" />+			<DetectChar context="#pop!CSSContent" attribute="Element Tag" char="&gt;" />+			<IncludeRules context="MustacheVariables" />+			<IncludeRules context="FindAttributes" />+			<RegExpr context="#stay" attribute="Error" String="\S" />+		</context>+		<context name="CSSContent" attribute="Normal Text" lineEndContext="#stay">+			<RegExpr context="#pop!ElementTagEnd" attribute="Element Tag" String="&lt;/style\b" insensitive="true" endRegion="style" />+			<IncludeRules context="MustacheVariables" />++			<DetectChar context="CSS-RuleSet" attribute="Normal Text" char="{" beginRegion="ruleset" />+			<DetectChar context="CSS-SelectorAttr" attribute="CSS: Selector Attribute" char="[" />+			<IncludeRules context="##CSS" includeAttrib="true"/>+		</context>++		<!-- Overwrite some rules of 'css.xml' to add Mustache variables -->+		<context name="CSS-RuleSet" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="#pop" attribute="Normal Text" char="}" endRegion="ruleset" />+			<IncludeRules context="MustacheVariables" />+			<IncludeRules context="RuleSet##CSS" />+		</context>+		<context name="CSS-SelectorAttr" attribute="CSS: Selector Attribute" lineEndContext="#stay">+			<DetectChar context="#pop" attribute="CSS: Selector Attribute" char="]" />+			<IncludeRules context="MustacheVariables" />+			<IncludeRules context="SelectorAttr##CSS" />+		</context>++		<!-- JavaScript -->++		<context name="JS" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="#pop!JSContent" attribute="Element Tag" char="&gt;" />+			<Detect2Chars context="#pop" attribute="Element Tag" char="/" char1="&gt;" endRegion="script" />+			<IncludeRules context="MustacheVariables" />+			<IncludeRules context="FindAttributes" />+			<RegExpr attribute="Error" context="#stay" String="\S" />+		</context>++		<context name="JSContent" attribute="Normal Text" lineEndContext="#stay">+			<RegExpr context="#pop!ElementTagEnd" attribute="Element Tag" String="&lt;/script\b" insensitive="true" endRegion="script" />+			<RegExpr context="JSCommentClose" attribute="Comment" String="//(?=.*&lt;/script\b)" insensitive="true" />+			<IncludeRules context="MustacheVariables" />+			<IncludeRules context="OverwriteJavaScript" />+			<IncludeRules context="Normal##JavaScript" includeAttrib="true"/>+		</context>+		<context name="JSCommentClose" attribute="Comment" lineEndContext="#pop">+			<RegExpr context="#pop#pop!ElementTagEnd" attribute="Element Tag" String="&lt;/script\b" insensitive="true" endRegion="script" />+		</context>++		<!-- Overwrite some rules of 'javascript.xml' to add Mustache variables -->+		<context name="OverwriteJavaScript" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="JavaScript-Template" attribute="JS: Template" char="`" />+			<StringDetect context="JavaScript-RawTemplate" attribute="JS: Template" String="String.raw`" />+			<DetectChar context="JavaScript-String" attribute="String" char="&quot;" />+			<DetectChar context="JavaScript-StringSQ" attribute="String" char="'" />+			<DetectChar context="JavaScript-Object" attribute="Symbol" char="{" beginRegion="Brace" />+			<DetectChar context="#stay" attribute="Symbol" char="?" />+		</context>+		<context name="JavaScript-Object" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="#pop" attribute="Symbol" char="}" endRegion="Brace" />+			<IncludeRules context="MustacheVariables" />+			<IncludeRules context="OverwriteJavaScript" />+			<IncludeRules context="Object##JavaScript" includeAttrib="true" />+		</context>+		<context name="JavaScript-Template" attribute="JS: Template" lineEndContext="#stay">+			<DetectChar context="#pop" attribute="JS: Template" char="`" />+			<Detect2Chars context="JavaScript-Substitution" attribute="JS: Substitution" char="$" char1="{" />+			<IncludeRules context="MustacheVariables" />+			<IncludeRules context="Template##JavaScript" />+		</context>+		<context name="JavaScript-Substitution" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="#pop" attribute="JS: Substitution" char="}" />+			<IncludeRules context="MustacheVariables" />+			<IncludeRules context="OverwriteJavaScript" />+			<IncludeRules context="Substitution##JavaScript" />+		</context>+		<context name="JavaScript-String" attribute="String" lineEndContext="#pop">+			<DetectChar context="#pop" attribute="String" char="&quot;" />+			<IncludeRules context="MustacheVariables" />+			<IncludeRules context="String##JavaScript" />+		</context>+		<context name="JavaScript-StringSQ" attribute="String" lineEndContext="#pop">+			<DetectChar context="#pop" attribute="String" char="'" />+			<IncludeRules context="MustacheVariables" />+			<IncludeRules context="String SQ##JavaScript" />+		</context>+		<context name="JavaScript-RawTemplate" attribute="JS: Template" lineEndContext="#stay">+			<DetectChar context="#pop" attribute="JS: Template" char="`" />+			<IncludeRules context="MustacheVariables" />+		</context>++	</contexts>++	<itemDatas>+		<itemData name="Normal Text"       defStyleNum="dsNormal" spellChecking="false" />+		<itemData name="Comment"           defStyleNum="dsComment" />++		<itemData name="Mustache Inside"   defStyleNum="dsNormal" spellChecking="false" />+		<itemData name="Mustache Block"    defStyleNum="dsFunction" bold="1" spellChecking="false" />+		<itemData name="Mustache Variable" defStyleNum="dsVariable" spellChecking="false" />+		<itemData name="Mustache Variable Unescape" defStyleNum="dsSpecialChar" spellChecking="false" />+		<itemData name="Mustache Partial"  defStyleNum="dsChar" spellChecking="false" />+		<itemData name="Mustache Marker Set" defStyleNum="dsVariable" spellChecking="false" />+		<itemData name="String"            defStyleNum="dsString" />+		<itemData name="Number"            defStyleNum="dsDecVal" />++		<itemData name="Element Tag"       defStyleNum="dsKeyword" spellChecking="false" />+		<itemData name="Attribute"         defStyleNum="dsOthers" spellChecking="false" />+		<itemData name="Value"             defStyleNum="dsString" spellChecking="false" />+		<itemData name="Symbol"            defStyleNum="dsOperator" />+		<itemData name="Escape"            defStyleNum="dsSpecialChar" />+		<itemData name="Error"             defStyleNum="dsError" spellChecking="false" />++		<itemData name="EntityRef"         defStyleNum="dsDecVal" spellChecking="false" />+		<itemData name="PEntityRef"        defStyleNum="dsDecVal" spellChecking="false" />+		<itemData name="CDATA"             defStyleNum="dsBaseN" bold="1" spellChecking="false" />+		<itemData name="Processing Instruction" defStyleNum="dsKeyword" spellChecking="false" />+		<itemData name="Doctype"           defStyleNum="dsDataType" bold="1" spellChecking="false" />++		<!-- CSS itemDatas -->+		<itemData name="CSS: Selector Attribute" defStyleNum="dsExtension" spellChecking="false"/>+		<!-- JavaScript itemDatas -->+		<itemData name="JS: Template"     defStyleNum="dsVerbatimString" />+		<itemData name="JS: Substitution" defStyleNum="dsSpecialChar" spellChecking="false" />+	</itemDatas>++</highlighting>++<general>+	<comments>+		<comment name="multiLine" start="{{!" end="}}" />+	</comments>+</general>++</language>+<!-- kate: replace-tabs off; tab-width 3; indent-width 3; remove-trailing-spaces mod; dynamic-word-wrap off; -->
syntax/octave.xml view
@@ -1,2217 +1,2832 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE language SYSTEM "language.dtd"> <!---  ====================================================================-  Octave syntax highlighting file for the KDE editors Kate and Kwrite-  ====================================================================-      based on Octave 2.1.64-      function and variable list obtained by dispatch_help()'s output--  Change log:-  16-Dec-04  Created from Matlab and Scilab files.--  Author: Federico Zenith, Norwegian University of Science and Technology-  Thanks to Luis Silvestre for previous version and suggestions--->---<language name="Octave" version="3" kateversion="3.4" section="Scientific" extensions="*.octave;*.m;*.M" mimetype="text/octave" casesensitive="1" license="GPL" author="Luis Silvestre and Federico Zenith">--  <highlighting>--    <!-- Reserved keywords in Octave -->-    <list name="keywords">-      <item>all_va_args</item>-      <item>break</item>-      <item>case</item>-      <item>continue</item>-      <item>else</item>-      <item>elseif</item>-      <item>end_unwind_protect</item>-      <item>global</item>-      <item>gplot</item>-      <item>gsplot</item>-      <item>otherwise</item>-      <item>persistent</item>-      <item>replot</item>-      <item>return</item>-      <item>static</item>-      <item>until</item>-      <item>unwind_protect</item>-      <item>unwind_protect_cleanup</item>-      <item>varargin</item>-      <item>varargout</item>-    </list>--    <list name="builtin">-      <item>argv</item>-      <item>e</item>-      <item>eps</item>-      <item>false</item>-      <item>F_DUPFD</item>-      <item>F_GETFD</item>-      <item>F_GETFL</item>-      <item>filesep</item>-      <item>F_SETFD</item>-      <item>F_SETFL</item>-      <item>i</item>-      <item>I</item>-      <item>inf</item>-      <item>Inf</item>-      <item>j</item>-      <item>J</item>-      <item>NA</item>-      <item>nan</item>-      <item>NaN</item>-      <item>O_APPEND</item>-      <item>O_ASYNC</item>-      <item>O_CREAT</item>-      <item>OCTAVE_HOME</item>-      <item>OCTAVE_VERSION</item>-      <item>O_EXCL</item>-      <item>O_NONBLOCK</item>-      <item>O_RDONLY</item>-      <item>O_RDWR</item>-      <item>O_SYNC</item>-      <item>O_TRUNC</item>-      <item>O_WRONLY</item>-      <item>pi</item>-      <item>program_invocation_name</item>-      <item>program_name</item>-      <item>P_tmpdir</item>-      <item>realmax</item>-      <item>realmin</item>-      <item>SEEK_CUR</item>-      <item>SEEK_END</item>-      <item>SEEK_SET</item>-      <item>SIG</item>-      <item>stderr</item>-      <item>stdin</item>-      <item>stdout</item>-      <item>true</item>-      <item>ans</item>-      <item>automatic_replot</item>-      <item>beep_on_error</item>-      <item>completion_append_char</item>-      <item>crash_dumps_octave_core</item>-      <item>current_script_file_name</item>-      <item>debug_on_error</item>-      <item>debug_on_interrupt</item>-      <item>debug_on_warning</item>-      <item>debug_symtab_lookups</item>-      <item>DEFAULT_EXEC_PATH</item>-      <item>DEFAULT_LOADPATH</item>-      <item>default_save_format</item>-      <item>echo_executing_commands</item>-      <item>EDITOR</item>-      <item>EXEC_PATH</item>-      <item>FFTW_WISDOM_PROGRAM</item>-      <item>fixed_point_format</item>-      <item>gnuplot_binary</item>-      <item>gnuplot_command_axes</item>-      <item>gnuplot_command_end</item>-      <item>gnuplot_command_plot</item>-      <item>gnuplot_command_replot</item>-      <item>gnuplot_command_splot</item>-      <item>gnuplot_command_title</item>-      <item>gnuplot_command_using</item>-      <item>gnuplot_command_with</item>-      <item>gnuplot_has_frames</item>-      <item>history_file</item>-      <item>history_size</item>-      <item>ignore_function_time_stamp</item>-      <item>IMAGEPATH</item>-      <item>INFO_FILE</item>-      <item>INFO_PROGRAM</item>-      <item>__kluge_procbuf_delay__</item>-      <item>LOADPATH</item>-      <item>MAKEINFO_PROGRAM</item>-      <item>max_recursion_depth</item>-      <item>octave_core_file_format</item>-      <item>octave_core_file_limit</item>-      <item>octave_core_file_name</item>-      <item>output_max_field_width</item>-      <item>output_precision</item>-      <item>page_output_immediately</item>-      <item>PAGER</item>-      <item>page_screen_output</item>-      <item>print_answer_id_name</item>-      <item>print_empty_dimensions</item>-      <item>print_rhs_assign_val</item>-      <item>PS1</item>-      <item>PS2</item>-      <item>PS4</item>-      <item>save_header_format_string</item>-      <item>save_precision</item>-      <item>saving_history</item>-      <item>sighup_dumps_octave_core</item>-      <item>sigterm_dumps_octave_core</item>-      <item>silent_functions</item>-      <item>split_long_rows</item>-      <item>string_fill_char</item>-      <item>struct_levels_to_print</item>-      <item>suppress_verbose_help_message</item>-      <item>variables_can_hide_functions</item>-      <item>warn_assign_as_truth_value</item>-      <item>warn_divide_by_zero</item>-      <item>warn_empty_list_elements</item>-      <item>warn_fortran_indexing</item>-      <item>warn_function_name_clash</item>-      <item>warn_future_time_stamp</item>-      <item>warn_imag_to_real</item>-      <item>warn_matlab_incompatible</item>-      <item>warn_missing_semicolon</item>-      <item>warn_neg_dim_as_zero</item>-      <item>warn_num_to_str</item>-      <item>warn_precedence_change</item>-      <item>warn_reload_forces_clear</item>-      <item>warn_resize_on_range_error</item>-      <item>warn_separator_insert</item>-      <item>warn_single_quote_string</item>-      <item>warn_str_to_num</item>-      <item>warn_undefined_return_values</item>-      <item>warn_variable_switch_label</item>-      <item>whos_line_format</item>-    </list>-    -    <list name="commands">-      <item>casesen</item>-      <item>cd</item>-      <item>chdir</item>-      <item>clear</item>-      <item>dbclear</item>-      <item>dbstatus</item>-      <item>dbstop</item>-      <item>dbtype</item>-      <item>dbwhere</item>-      <item>diary</item>-      <item>echo</item>-      <item>edit_history</item>-      <item>__end__</item>-      <item>format</item>-      <item>gset</item>-      <item>gshow</item>-      <item>help</item>-      <item>history</item>-      <item>hold</item>-      <item>iskeyword</item>-      <item>isvarname</item>-      <item>load</item>-      <item>ls</item>-      <item>mark_as_command</item>-      <item>mislocked</item>-      <item>mlock</item>-      <item>more</item>-      <item>munlock</item>-      <item>run_history</item>-      <item>save</item>-      <item>set</item>-      <item>show</item>-      <item>type</item>-      <item>unmark_command</item>-      <item>which</item>-      <item>who</item>-      <item>whos</item>-    </list>-    -    <list name="functions">-      <item>abs</item>-      <item>acos</item>-      <item>acosh</item>-      <item>all</item>-      <item>angle</item>-      <item>any</item>-      <item>append</item>-      <item>arg</item>-      <item>argnames</item>-      <item>asin</item>-      <item>asinh</item>-      <item>assignin</item>-      <item>atan</item>-      <item>atan2</item>-      <item>atanh</item>-      <item>atexit</item>-      <item>bitand</item>-      <item>bitmax</item>-      <item>bitor</item>-      <item>bitshift</item>-      <item>bitxor</item>-      <item>casesen</item>-      <item>cat</item>-      <item>cd</item>-      <item>ceil</item>-      <item>cell</item>-      <item>cell2struct</item>-      <item>cellstr</item>-      <item>char</item>-      <item>chdir</item>-      <item>class</item>-      <item>clc</item>-      <item>clear</item>-      <item>clearplot</item>-      <item>clg</item>-      <item>closeplot</item>-      <item>completion_matches</item>-      <item>conj</item>-      <item>conv</item>-      <item>convmtx</item>-      <item>cos</item>-      <item>cosh</item>-      <item>cumprod</item>-      <item>cumsum</item>-      <item>dbclear</item>-      <item>dbstatus</item>-      <item>dbstop</item>-      <item>dbtype</item>-      <item>dbwhere</item>-      <item>deconv</item>-      <item>det</item>-      <item>dftmtx</item>-      <item>diag</item>-      <item>diary</item>-      <item>disp</item>-      <item>document</item>-      <item>do_string_escapes</item>-      <item>double</item>-      <item>dup2</item>-      <item>echo</item>-      <item>edit_history</item>-      <item>__end__</item>-      <item>erf</item>-      <item>erfc</item>-      <item>ERRNO</item>-      <item>error</item>-      <item>__error_text__</item>-      <item>error_text</item>-      <item>eval</item>-      <item>evalin</item>-      <item>exec</item>-      <item>exist</item>-      <item>exit</item>-      <item>exp</item>-      <item>eye</item>-      <item>fclose</item>-      <item>fcntl</item>-      <item>fdisp</item>-      <item>feof</item>-      <item>ferror</item>-      <item>feval</item>-      <item>fflush</item>-      <item>fft</item>-      <item>fgetl</item>-      <item>fgets</item>-      <item>fieldnames</item>-      <item>file_in_loadpath</item>-      <item>file_in_path</item>-      <item>filter</item>-      <item>find</item>-      <item>find_first_of_in_loadpath</item>-      <item>finite</item>-      <item>fix</item>-      <item>floor</item>-      <item>fmod</item>-      <item>fnmatch</item>-      <item>fopen</item>-      <item>fork</item>-      <item>format</item>-      <item>formula</item>-      <item>fprintf</item>-      <item>fputs</item>-      <item>fread</item>-      <item>freport</item>-      <item>frewind</item>-      <item>fscanf</item>-      <item>fseek</item>-      <item>ftell</item>-      <item>func2str</item>-      <item>functions</item>-      <item>fwrite</item>-      <item>gamma</item>-      <item>gammaln</item>-      <item>getegid</item>-      <item>getenv</item>-      <item>geteuid</item>-      <item>getgid</item>-      <item>getpgrp</item>-      <item>getpid</item>-      <item>getppid</item>-      <item>getuid</item>-      <item>glob</item>-      <item>graw</item>-      <item>gset</item>-      <item>gshow</item>-      <item>help</item>-      <item>history</item>-      <item>hold</item>-      <item>home</item>-      <item>horzcat</item>-      <item>ifft</item>-      <item>imag</item>-      <item>inline</item>-      <item>input</item>-      <item>input_event_hook</item>-      <item>int16</item>-      <item>int32</item>-      <item>int64</item>-      <item>int8</item>-      <item>intmax</item>-      <item>intmin</item>-      <item>inv</item>-      <item>inverse</item>-      <item>ipermute</item>-      <item>isalnum</item>-      <item>isalpha</item>-      <item>isascii</item>-      <item>isbool</item>-      <item>iscell</item>-      <item>iscellstr</item>-      <item>ischar</item>-      <item>iscntrl</item>-      <item>iscomplex</item>-      <item>isdigit</item>-      <item>isempty</item>-      <item>isfield</item>-      <item>isfinite</item>-      <item>isglobal</item>-      <item>isgraph</item>-      <item>ishold</item>-      <item>isieee</item>-      <item>isinf</item>-      <item>iskeyword</item>-      <item>islist</item>-      <item>islogical</item>-      <item>islower</item>-      <item>ismatrix</item>-      <item>isna</item>-      <item>isnan</item>-      <item>is_nan_or_na</item>-      <item>isnumeric</item>-      <item>isprint</item>-      <item>ispunct</item>-      <item>isreal</item>-      <item>isspace</item>-      <item>isstream</item>-      <item>isstreamoff</item>-      <item>isstruct</item>-      <item>isupper</item>-      <item>isvarname</item>-      <item>isxdigit</item>-      <item>kbhit</item>-      <item>keyboard</item>-      <item>kill</item>-      <item>lasterr</item>-      <item>lastwarn</item>-      <item>length</item>-      <item>lgamma</item>-      <item>link</item>-      <item>linspace</item>-      <item>list</item>-      <item>load</item>-      <item>log</item>-      <item>log10</item>-      <item>ls</item>-      <item>lstat</item>-      <item>lu</item>-      <item>mark_as_command</item>-      <item>mislocked</item>-      <item>mkdir</item>-      <item>mkfifo</item>-      <item>mkstemp</item>-      <item>mlock</item>-      <item>more</item>-      <item>munlock</item>-      <item>nargin</item>-      <item>nargout</item>-      <item>native_float_format</item>-      <item>ndims</item>-      <item>nth</item>-      <item>numel</item>-      <item>octave_config_info</item>-      <item>octave_tmp_file_name</item>-      <item>ones</item>-      <item>pause</item>-      <item>pclose</item>-      <item>permute</item>-      <item>pipe</item>-      <item>popen</item>-      <item>printf</item>-      <item>__print_symbol_info__</item>-      <item>__print_symtab_info__</item>-      <item>prod</item>-      <item>purge_tmp_files</item>-      <item>putenv</item>-      <item>puts</item>-      <item>pwd</item>-      <item>quit</item>-      <item>rank</item>-      <item>readdir</item>-      <item>readlink</item>-      <item>read_readline_init_file</item>-      <item>real</item>-      <item>rehash</item>-      <item>rename</item>-      <item>reshape</item>-      <item>reverse</item>-      <item>rmdir</item>-      <item>rmfield</item>-      <item>roots</item>-      <item>round</item>-      <item>run_history</item>-      <item>save</item>-      <item>scanf</item>-      <item>set</item>-      <item>shell_cmd</item>-      <item>show</item>-      <item>sign</item>-      <item>sin</item>-      <item>sinh</item>-      <item>size</item>-      <item>sizeof</item>-      <item>sleep</item>-      <item>sort</item>-      <item>source</item>-      <item>splice</item>-      <item>sprintf</item>-      <item>sqrt</item>-      <item>squeeze</item>-      <item>sscanf</item>-      <item>stat</item>-      <item>str2func</item>-      <item>streamoff</item>-      <item>struct</item>-      <item>struct2cell</item>-      <item>sum</item>-      <item>sumsq</item>-      <item>symlink</item>-      <item>system</item>-      <item>tan</item>-      <item>tanh</item>-      <item>tilde_expand</item>-      <item>tmpfile</item>-      <item>tmpnam</item>-      <item>toascii</item>-      <item>__token_count__</item>-      <item>tolower</item>-      <item>toupper</item>-      <item>type</item>-      <item>typeinfo</item>-      <item>uint16</item>-      <item>uint32</item>-      <item>uint64</item>-      <item>uint8</item>-      <item>umask</item>-      <item>undo_string_escapes</item>-      <item>unlink</item>-      <item>unmark_command</item>-      <item>usage</item>-      <item>usleep</item>-      <item>va_arg</item>-      <item>va_start</item>-      <item>vectorize</item>-      <item>vertcat</item>-      <item>vr_val</item>-      <item>waitpid</item>-      <item>warning</item>-      <item>warranty</item>-      <item>which</item>-      <item>who</item>-      <item>whos</item>-      <item>zeros</item>-      <item>airy</item>-      <item>balance</item>-      <item>besselh</item>-      <item>besseli</item>-      <item>besselj</item>-      <item>besselk</item>-      <item>bessely</item>-      <item>betainc</item>-      <item>chol</item>-      <item>colloc</item>-      <item>daspk</item>-      <item>daspk_options</item>-      <item>dasrt</item>-      <item>dasrt_options</item>-      <item>dassl</item>-      <item>dassl_options</item>-      <item>det</item>-      <item>eig</item>-      <item>endgrent</item>-      <item>endpwent</item>-      <item>expm</item>-      <item>fft</item>-      <item>fft2</item>-      <item>fftn</item>-      <item>fftw_wisdom</item>-      <item>filter</item>-      <item>find</item>-      <item>fsolve</item>-      <item>fsolve_options</item>-      <item>gammainc</item>-      <item>gcd</item>-      <item>getgrent</item>-      <item>getgrgid</item>-      <item>getgrnam</item>-      <item>getpwent</item>-      <item>getpwnam</item>-      <item>getpwuid</item>-      <item>getrusage</item>-      <item>givens</item>-      <item>gmtime</item>-      <item>hess</item>-      <item>ifft</item>-      <item>ifft2</item>-      <item>ifftn</item>-      <item>inv</item>-      <item>inverse</item>-      <item>kron</item>-      <item>localtime</item>-      <item>lpsolve</item>-      <item>lpsolve_options</item>-      <item>lsode</item>-      <item>lsode_options</item>-      <item>lu</item>-      <item>max</item>-      <item>min</item>-      <item>minmax</item>-      <item>mktime</item>-      <item>odessa</item>-      <item>odessa_options</item>-      <item>pinv</item>-      <item>qr</item>-      <item>quad</item>-      <item>quad_options</item>-      <item>qz</item>-      <item>rand</item>-      <item>randn</item>-      <item>schur</item>-      <item>setgrent</item>-      <item>setpwent</item>-      <item>sort</item>-      <item>sqrtm</item>-      <item>strftime</item>-      <item>strptime</item>-      <item>svd</item>-      <item>syl</item>-      <item>time</item>-      <item>abcddim</item>-      <item>__abcddims__</item>-      <item>acot</item>-      <item>acoth</item>-      <item>acsc</item>-      <item>acsch</item>-      <item>analdemo</item>-      <item>anova</item>-      <item>arch_fit</item>-      <item>arch_rnd</item>-      <item>arch_test</item>-      <item>are</item>-      <item>arma_rnd</item>-      <item>asctime</item>-      <item>asec</item>-      <item>asech</item>-      <item>autocor</item>-      <item>autocov</item>-      <item>autoreg_matrix</item>-      <item>axis</item>-      <item>axis2dlim</item>-      <item>__axis_label__</item>-      <item>bar</item>-      <item>bartlett</item>-      <item>bartlett_test</item>-      <item>base2dec</item>-      <item>bddemo</item>-      <item>beep</item>-      <item>bessel</item>-      <item>beta</item>-      <item>beta_cdf</item>-      <item>betai</item>-      <item>beta_inv</item>-      <item>beta_pdf</item>-      <item>beta_rnd</item>-      <item>bin2dec</item>-      <item>bincoeff</item>-      <item>binomial_cdf</item>-      <item>binomial_inv</item>-      <item>binomial_pdf</item>-      <item>binomial_rnd</item>-      <item>bitcmp</item>-      <item>bitget</item>-      <item>bitset</item>-      <item>blackman</item>-      <item>blanks</item>-      <item>bode</item>-      <item>bode_bounds</item>-      <item>__bodquist__</item>-      <item>bottom_title</item>-      <item>bug_report</item>-      <item>buildssic</item>-      <item>c2d</item>-      <item>cart2pol</item>-      <item>cart2sph</item>-      <item>cauchy_cdf</item>-      <item>cauchy_inv</item>-      <item>cauchy_pdf</item>-      <item>cauchy_rnd</item>-      <item>cellidx</item>-      <item>center</item>-      <item>chisquare_cdf</item>-      <item>chisquare_inv</item>-      <item>chisquare_pdf</item>-      <item>chisquare_rnd</item>-      <item>chisquare_test_homogeneity</item>-      <item>chisquare_test_independence</item>-      <item>circshift</item>-      <item>clock</item>-      <item>cloglog</item>-      <item>close</item>-      <item>colormap</item>-      <item>columns</item>-      <item>com2str</item>-      <item>comma</item>-      <item>common_size</item>-      <item>commutation_matrix</item>-      <item>compan</item>-      <item>complement</item>-      <item>computer</item>-      <item>cond</item>-      <item>contour</item>-      <item>controldemo</item>-      <item>conv</item>-      <item>cor</item>-      <item>corrcoef</item>-      <item>cor_test</item>-      <item>cot</item>-      <item>coth</item>-      <item>cov</item>-      <item>cputime</item>-      <item>create_set</item>-      <item>cross</item>-      <item>csc</item>-      <item>csch</item>-      <item>ctime</item>-      <item>ctrb</item>-      <item>cut</item>-      <item>d2c</item>-      <item>damp</item>-      <item>dare</item>-      <item>date</item>-      <item>dcgain</item>-      <item>deal</item>-      <item>deblank</item>-      <item>dec2base</item>-      <item>dec2bin</item>-      <item>dec2hex</item>-      <item>deconv</item>-      <item>delete</item>-      <item>DEMOcontrol</item>-      <item>demoquat</item>-      <item>detrend</item>-      <item>dezero</item>-      <item>dgkfdemo</item>-      <item>dgram</item>-      <item>dhinfdemo</item>-      <item>diff</item>-      <item>diffpara</item>-      <item>dir</item>-      <item>discrete_cdf</item>-      <item>discrete_inv</item>-      <item>discrete_pdf</item>-      <item>discrete_rnd</item>-      <item>dkalman</item>-      <item>dlqe</item>-      <item>dlqg</item>-      <item>dlqr</item>-      <item>dlyap</item>-      <item>dmr2d</item>-      <item>dmult</item>-      <item>dot</item>-      <item>dre</item>-      <item>dump_prefs</item>-      <item>duplication_matrix</item>-      <item>durbinlevinson</item>-      <item>empirical_cdf</item>-      <item>empirical_inv</item>-      <item>empirical_pdf</item>-      <item>empirical_rnd</item>-      <item>erfinv</item>-      <item>__errcomm__</item>-      <item>errorbar</item>-      <item>__errplot__</item>-      <item>etime</item>-      <item>exponential_cdf</item>-      <item>exponential_inv</item>-      <item>exponential_pdf</item>-      <item>exponential_rnd</item>-      <item>f_cdf</item>-      <item>fftconv</item>-      <item>fftfilt</item>-      <item>fftshift</item>-      <item>figure</item>-      <item>fileparts</item>-      <item>findstr</item>-      <item>f_inv</item>-      <item>fir2sys</item>-      <item>flipdim</item>-      <item>fliplr</item>-      <item>flipud</item>-      <item>flops</item>-      <item>f_pdf</item>-      <item>fractdiff</item>-      <item>frdemo</item>-      <item>freqchkw</item>-      <item>__freqresp__</item>-      <item>freqz</item>-      <item>freqz_plot</item>-      <item>f_rnd</item>-      <item>f_test_regression</item>-      <item>fullfile</item>-      <item>fv</item>-      <item>fvl</item>-      <item>gamma_cdf</item>-      <item>gammai</item>-      <item>gamma_inv</item>-      <item>gamma_pdf</item>-      <item>gamma_rnd</item>-      <item>geometric_cdf</item>-      <item>geometric_inv</item>-      <item>geometric_pdf</item>-      <item>geometric_rnd</item>-      <item>gls</item>-      <item>gram</item>-      <item>gray</item>-      <item>gray2ind</item>-      <item>grid</item>-      <item>h2norm</item>-      <item>h2syn</item>-      <item>hamming</item>-      <item>hankel</item>-      <item>hanning</item>-      <item>hex2dec</item>-      <item>hilb</item>-      <item>hinf_ctr</item>-      <item>hinfdemo</item>-      <item>hinfnorm</item>-      <item>hinfsyn</item>-      <item>hinfsyn_chk</item>-      <item>hinfsyn_ric</item>-      <item>hist</item>-      <item>hotelling_test</item>-      <item>hotelling_test_2</item>-      <item>housh</item>-      <item>hsv2rgb</item>-      <item>hurst</item>-      <item>hypergeometric_cdf</item>-      <item>hypergeometric_inv</item>-      <item>hypergeometric_pdf</item>-      <item>hypergeometric_rnd</item>-      <item>image</item>-      <item>imagesc</item>-      <item>impulse</item>-      <item>imshow</item>-      <item>ind2gray</item>-      <item>ind2rgb</item>-      <item>ind2sub</item>-      <item>index</item>-      <item>int2str</item>-      <item>intersection</item>-      <item>invhilb</item>-      <item>iqr</item>-      <item>irr</item>-      <item>isa</item>-      <item>is_abcd</item>-      <item>is_bool</item>-      <item>is_complex</item>-      <item>is_controllable</item>-      <item>isdefinite</item>-      <item>is_detectable</item>-      <item>is_dgkf</item>-      <item>is_digital</item>-      <item>is_duplicate_entry</item>-      <item>is_global</item>-      <item>is_leap_year</item>-      <item>isletter</item>-      <item>is_list</item>-      <item>is_matrix</item>-      <item>is_observable</item>-      <item>ispc</item>-      <item>is_sample</item>-      <item>is_scalar</item>-      <item>isscalar</item>-      <item>is_signal_list</item>-      <item>is_siso</item>-      <item>is_square</item>-      <item>issquare</item>-      <item>is_stabilizable</item>-      <item>is_stable</item>-      <item>isstr</item>-      <item>is_stream</item>-      <item>is_struct</item>-      <item>is_symmetric</item>-      <item>issymmetric</item>-      <item>isunix</item>-      <item>is_vector</item>-      <item>isvector</item>-      <item>jet707</item>-      <item>kendall</item>-      <item>kolmogorov_smirnov_cdf</item>-      <item>kolmogorov_smirnov_test</item>-      <item>kolmogorov_smirnov_test_2</item>-      <item>kruskal_wallis_test</item>-      <item>krylov</item>-      <item>krylovb</item>-      <item>kurtosis</item>-      <item>laplace_cdf</item>-      <item>laplace_inv</item>-      <item>laplace_pdf</item>-      <item>laplace_rnd</item>-      <item>lcm</item>-      <item>lin2mu</item>-      <item>listidx</item>-      <item>list_primes</item>-      <item>loadaudio</item>-      <item>loadimage</item>-      <item>log2</item>-      <item>logical</item>-      <item>logistic_cdf</item>-      <item>logistic_inv</item>-      <item>logistic_pdf</item>-      <item>logistic_regression</item>-      <item>logistic_regression_derivatives</item>-      <item>logistic_regression_likelihood</item>-      <item>logistic_rnd</item>-      <item>logit</item>-      <item>loglog</item>-      <item>loglogerr</item>-      <item>logm</item>-      <item>lognormal_cdf</item>-      <item>lognormal_inv</item>-      <item>lognormal_pdf</item>-      <item>lognormal_rnd</item>-      <item>logspace</item>-      <item>lower</item>-      <item>lqe</item>-      <item>lqg</item>-      <item>lqr</item>-      <item>lsim</item>-      <item>ltifr</item>-      <item>lyap</item>-      <item>mahalanobis</item>-      <item>manova</item>-      <item>mcnemar_test</item>-      <item>mean</item>-      <item>meansq</item>-      <item>median</item>-      <item>menu</item>-      <item>mesh</item>-      <item>meshdom</item>-      <item>meshgrid</item>-      <item>minfo</item>-      <item>mod</item>-      <item>moddemo</item>-      <item>moment</item>-      <item>mplot</item>-      <item>mu2lin</item>-      <item>multiplot</item>-      <item>nargchk</item>-      <item>nextpow2</item>-      <item>nichols</item>-      <item>norm</item>-      <item>normal_cdf</item>-      <item>normal_inv</item>-      <item>normal_pdf</item>-      <item>normal_rnd</item>-      <item>not</item>-      <item>nper</item>-      <item>npv</item>-      <item>ntsc2rgb</item>-      <item>null</item>-      <item>num2str</item>-      <item>nyquist</item>-      <item>obsv</item>-      <item>ocean</item>-      <item>ols</item>-      <item>oneplot</item>-      <item>ord2</item>-      <item>orth</item>-      <item>__outlist__</item>-      <item>pack</item>-      <item>packedform</item>-      <item>packsys</item>-      <item>parallel</item>-      <item>paren</item>-      <item>pascal_cdf</item>-      <item>pascal_inv</item>-      <item>pascal_pdf</item>-      <item>pascal_rnd</item>-      <item>path</item>-      <item>periodogram</item>-      <item>perror</item>-      <item>place</item>-      <item>playaudio</item>-      <item>plot</item>-      <item>plot_border</item>-      <item>__plr__</item>-      <item>__plr1__</item>-      <item>__plr2__</item>-      <item>__plt__</item>-      <item>__plt1__</item>-      <item>__plt2__</item>-      <item>__plt2mm__</item>-      <item>__plt2mv__</item>-      <item>__plt2ss__</item>-      <item>__plt2vm__</item>-      <item>__plt2vv__</item>-      <item>__pltopt__</item>-      <item>__pltopt1__</item>-      <item>pmt</item>-      <item>poisson_cdf</item>-      <item>poisson_inv</item>-      <item>poisson_pdf</item>-      <item>poisson_rnd</item>-      <item>pol2cart</item>-      <item>polar</item>-      <item>poly</item>-      <item>polyder</item>-      <item>polyderiv</item>-      <item>polyfit</item>-      <item>polyinteg</item>-      <item>polyout</item>-      <item>polyreduce</item>-      <item>polyval</item>-      <item>polyvalm</item>-      <item>popen2</item>-      <item>postpad</item>-      <item>pow2</item>-      <item>ppplot</item>-      <item>prepad</item>-      <item>probit</item>-      <item>prompt</item>-      <item>prop_test_2</item>-      <item>pv</item>-      <item>pvl</item>-      <item>pzmap</item>-      <item>qconj</item>-      <item>qcoordinate_plot</item>-      <item>qderiv</item>-      <item>qderivmat</item>-      <item>qinv</item>-      <item>qmult</item>-      <item>qqplot</item>-      <item>qtrans</item>-      <item>qtransv</item>-      <item>qtransvmat</item>-      <item>quaternion</item>-      <item>qzhess</item>-      <item>qzval</item>-      <item>randperm</item>-      <item>range</item>-      <item>rank</item>-      <item>ranks</item>-      <item>rate</item>-      <item>record</item>-      <item>rectangle_lw</item>-      <item>rectangle_sw</item>-      <item>rem</item>-      <item>repmat</item>-      <item>residue</item>-      <item>rgb2hsv</item>-      <item>rgb2ind</item>-      <item>rgb2ntsc</item>-      <item>rindex</item>-      <item>rldemo</item>-      <item>rlocus</item>-      <item>roots</item>-      <item>rot90</item>-      <item>rotdim</item>-      <item>rotg</item>-      <item>rows</item>-      <item>run_cmd</item>-      <item>run_count</item>-      <item>run_test</item>-      <item>saveaudio</item>-      <item>saveimage</item>-      <item>sec</item>-      <item>sech</item>-      <item>semicolon</item>-      <item>semilogx</item>-      <item>semilogxerr</item>-      <item>semilogy</item>-      <item>semilogyerr</item>-      <item>series</item>-      <item>setaudio</item>-      <item>setstr</item>-      <item>shg</item>-      <item>shift</item>-      <item>shiftdim</item>-      <item>sign_test</item>-      <item>sinc</item>-      <item>sinetone</item>-      <item>sinewave</item>-      <item>skewness</item>-      <item>sombrero</item>-      <item>sortcom</item>-      <item>spearman</item>-      <item>spectral_adf</item>-      <item>spectral_xdf</item>-      <item>spencer</item>-      <item>sph2cart</item>-      <item>split</item>-      <item>ss</item>-      <item>ss2sys</item>-      <item>ss2tf</item>-      <item>ss2zp</item>-      <item>stairs</item>-      <item>starp</item>-      <item>statistics</item>-      <item>std</item>-      <item>stdnormal_cdf</item>-      <item>stdnormal_inv</item>-      <item>stdnormal_pdf</item>-      <item>stdnormal_rnd</item>-      <item>step</item>-      <item>__stepimp__</item>-      <item>stft</item>-      <item>str2mat</item>-      <item>str2num</item>-      <item>strappend</item>-      <item>strcat</item>-      <item>strcmp</item>-      <item>strerror</item>-      <item>strjust</item>-      <item>strrep</item>-      <item>struct_contains</item>-      <item>struct_elements</item>-      <item>studentize</item>-      <item>sub2ind</item>-      <item>subplot</item>-      <item>substr</item>-      <item>subwindow</item>-      <item>swap</item>-      <item>swapcols</item>-      <item>swaprows</item>-      <item>sylvester_matrix</item>-      <item>synthesis</item>-      <item>sys2fir</item>-      <item>sys2ss</item>-      <item>sys2tf</item>-      <item>sys2zp</item>-      <item>sysadd</item>-      <item>sysappend</item>-      <item>syschnames</item>-      <item>__syschnamesl__</item>-      <item>syschtsam</item>-      <item>__sysconcat__</item>-      <item>sysconnect</item>-      <item>syscont</item>-      <item>__syscont_disc__</item>-      <item>__sysdefioname__</item>-      <item>__sysdefstname__</item>-      <item>sysdimensions</item>-      <item>sysdisc</item>-      <item>sysdup</item>-      <item>sysgetsignals</item>-      <item>sysgettsam</item>-      <item>sysgettype</item>-      <item>sysgroup</item>-      <item>__sysgroupn__</item>-      <item>sysidx</item>-      <item>sysmin</item>-      <item>sysmult</item>-      <item>sysout</item>-      <item>sysprune</item>-      <item>sysreorder</item>-      <item>sysrepdemo</item>-      <item>sysscale</item>-      <item>syssetsignals</item>-      <item>syssub</item>-      <item>sysupdate</item>-      <item>table</item>-      <item>t_cdf</item>-      <item>tempdir</item>-      <item>tempname</item>-      <item>texas_lotto</item>-      <item>tf</item>-      <item>tf2ss</item>-      <item>tf2sys</item>-      <item>__tf2sysl__</item>-      <item>tf2zp</item>-      <item>__tfl__</item>-      <item>tfout</item>-      <item>tic</item>-      <item>t_inv</item>-      <item>title</item>-      <item>toc</item>-      <item>toeplitz</item>-      <item>top_title</item>-      <item>t_pdf</item>-      <item>trace</item>-      <item>triangle_lw</item>-      <item>triangle_sw</item>-      <item>tril</item>-      <item>triu</item>-      <item>t_rnd</item>-      <item>t_test</item>-      <item>t_test_2</item>-      <item>t_test_regression</item>-      <item>tzero</item>-      <item>tzero2</item>-      <item>ugain</item>-      <item>uniform_cdf</item>-      <item>uniform_inv</item>-      <item>uniform_pdf</item>-      <item>uniform_rnd</item>-      <item>union</item>-      <item>unix</item>-      <item>unpacksys</item>-      <item>unwrap</item>-      <item>upper</item>-      <item>u_test</item>-      <item>values</item>-      <item>vander</item>-      <item>var</item>-      <item>var_test</item>-      <item>vec</item>-      <item>vech</item>-      <item>version</item>-      <item>vol</item>-      <item>weibull_cdf</item>-      <item>weibull_inv</item>-      <item>weibull_pdf</item>-      <item>weibull_rnd</item>-      <item>welch_test</item>-      <item>wgt1o</item>-      <item>wiener_rnd</item>-      <item>wilcoxon_test</item>-      <item>xlabel</item>-      <item>xor</item>-      <item>ylabel</item>-      <item>yulewalker</item>-      <item>zgfmul</item>-      <item>zgfslv</item>-      <item>zginit</item>-      <item>__zgpbal__</item>-      <item>zgreduce</item>-      <item>zgrownorm</item>-      <item>zgscal</item>-      <item>zgsgiv</item>-      <item>zgshsr</item>-      <item>zlabel</item>-      <item>zp</item>-      <item>zp2ss</item>-      <item>__zp2ssg2__</item>-      <item>zp2sys</item>-      <item>zp2tf</item>-      <item>zpout</item>-      <item>z_test</item>-      <item>z_test_2</item>-    </list>-    -    <list name="forge">-      <item>airy_Ai</item>-      <item>airy_Ai_deriv</item>-      <item>airy_Ai_deriv_scaled</item>-      <item>airy_Ai_scaled</item>-      <item>airy_Bi</item>-      <item>airy_Bi_deriv</item>-      <item>airy_Bi_deriv_scaled</item>-      <item>airy_Bi_scaled</item>-      <item>airy_zero_Ai</item>-      <item>airy_zero_Ai_deriv</item>-      <item>airy_zero_Bi</item>-      <item>airy_zero_Bi_deriv</item>-      <item>atanint</item>-      <item>bchdeco</item>-      <item>bchenco</item>-      <item>bessel_il_scaled</item>-      <item>bessel_In</item>-      <item>bessel_In_scaled</item>-      <item>bessel_Inu</item>-      <item>bessel_Inu_scaled</item>-      <item>bessel_jl</item>-      <item>bessel_Jn</item>-      <item>bessel_Jnu</item>-      <item>bessel_kl_scaled</item>-      <item>bessel_Kn</item>-      <item>bessel_Kn_scaled</item>-      <item>bessel_Knu</item>-      <item>bessel_Knu_scaled</item>-      <item>bessel_lnKnu</item>-      <item>bessel_yl</item>-      <item>bessel_Yn</item>-      <item>bessel_Ynu</item>-      <item>bessel_zero_J0</item>-      <item>bessel_zero_J1</item>-      <item>beta_gsl</item>-      <item>bfgsmin</item>-      <item>bisectionstep</item>-      <item>builtin</item>-      <item>bwfill</item>-      <item>bwlabel</item>-      <item>cell2csv</item>-      <item>celleval</item>-      <item>Chi</item>-      <item>chol</item>-      <item>Ci</item>-      <item>clausen</item>-      <item>conicalP_0</item>-      <item>conicalP_1</item>-      <item>conicalP_half</item>-      <item>conicalP_mhalf</item>-      <item>conv2</item>-      <item>cordflt2</item>-      <item>coupling_3j</item>-      <item>coupling_6j</item>-      <item>coupling_9j</item>-      <item>csv2cell</item>-      <item>csvconcat</item>-      <item>csvexplode</item>-      <item>cyclgen</item>-      <item>cyclpoly</item>-      <item>dawson</item>-      <item>debye_1</item>-      <item>debye_2</item>-      <item>debye_3</item>-      <item>debye_4</item>-      <item>deref</item>-      <item>dispatch</item>-      <item>dispatch_help</item>-      <item>display_fixed_operations</item>-      <item>dlmread</item>-      <item>ellint_Ecomp</item>-      <item>ellint_Kcomp</item>-      <item>ellipj</item>-      <item>erfc_gsl</item>-      <item>erf_gsl</item>-      <item>erf_Q</item>-      <item>erf_Z</item>-      <item>_errcore</item>-      <item>eta</item>-      <item>eta_int</item>-      <item>expint_3</item>-      <item>expint_E1</item>-      <item>expint_E2</item>-      <item>expint_Ei</item>-      <item>expm1</item>-      <item>exp_mult</item>-      <item>exprel</item>-      <item>exprel_2</item>-      <item>exprel_n</item>-      <item>fabs</item>-      <item>fangle</item>-      <item>farg</item>-      <item>fatan2</item>-      <item>fceil</item>-      <item>fconj</item>-      <item>fcos</item>-      <item>fcosh</item>-      <item>fcumprod</item>-      <item>fcumsum</item>-      <item>fdiag</item>-      <item>fermi_dirac_3half</item>-      <item>fermi_dirac_half</item>-      <item>fermi_dirac_inc_0</item>-      <item>fermi_dirac_int</item>-      <item>fermi_dirac_mhalf</item>-      <item>fexp</item>-      <item>ffloor</item>-      <item>fimag</item>-      <item>finitedifference</item>-      <item>fixed</item>-      <item>flog</item>-      <item>flog10</item>-      <item>fprod</item>-      <item>freal</item>-      <item>freshape</item>-      <item>fround</item>-      <item>fsin</item>-      <item>fsinh</item>-      <item>fsqrt</item>-      <item>fsum</item>-      <item>fsumsq</item>-      <item>ftan</item>-      <item>ftanh</item>-      <item>full</item>-      <item>gamma_gsl</item>-      <item>gamma_inc</item>-      <item>gamma_inc_P</item>-      <item>gamma_inc_Q</item>-      <item>gammainv_gsl</item>-      <item>gammastar</item>-      <item>gdet</item>-      <item>gdiag</item>-      <item>gexp</item>-      <item>gf</item>-      <item>gfilter</item>-      <item>_gfweight</item>-      <item>ginv</item>-      <item>ginverse</item>-      <item>glog</item>-      <item>glu</item>-      <item>gpick</item>-      <item>gprod</item>-      <item>grab</item>-      <item>grank</item>-      <item>graycomatrix</item>-      <item>__grcla__</item>-      <item>__grclf__</item>-      <item>__grcmd__</item>-      <item>greshape</item>-      <item>__grexit__</item>-      <item>__grfigure__</item>-      <item>__grgetstat__</item>-      <item>__grhold__</item>-      <item>__grinit__</item>-      <item>__grishold__</item>-      <item>__grnewset__</item>-      <item>__grsetgraph__</item>-      <item>gsl_sf</item>-      <item>gsqrt</item>-      <item>gsum</item>-      <item>gsumsq</item>-      <item>gtext</item>-      <item>gzoom</item>-      <item>hazard</item>-      <item>houghtf</item>-      <item>hyperg_0F1</item>-      <item>hzeta</item>-      <item>is_complex_sparse</item>-      <item>isfixed</item>-      <item>isgalois</item>-      <item>isprimitive</item>-      <item>is_real_sparse</item>-      <item>is_sparse</item>-      <item>jpgread</item>-      <item>jpgwrite</item>-      <item>lambert_W0</item>-      <item>lambert_Wm1</item>-      <item>legendre_Pl</item>-      <item>legendre_Plm</item>-      <item>legendre_Ql</item>-      <item>legendre_sphPlm</item>-      <item>legendre_sphPlm_array</item>-      <item>leval</item>-      <item>listen</item>-      <item>lnbeta</item>-      <item>lncosh</item>-      <item>lngamma_gsl</item>-      <item>lnpoch</item>-      <item>lnsinh</item>-      <item>log_1plusx</item>-      <item>log_1plusx_mx</item>-      <item>log_erfc</item>-      <item>lp</item>-      <item>make_sparse</item>-      <item>mark_for_deletion</item>-      <item>medfilt1</item>-      <item>newtonstep</item>-      <item>nnz</item>-      <item>numgradient</item>-      <item>numhessian</item>-      <item>pchip_deriv</item>-      <item>pngread</item>-      <item>pngwrite</item>-      <item>poch</item>-      <item>pochrel</item>-      <item>pretty</item>-      <item>primpoly</item>-      <item>psi</item>-      <item>psi_1_int</item>-      <item>psi_1piy</item>-      <item>psi_n</item>-      <item>rand</item>-      <item>rande</item>-      <item>randn</item>-      <item>randp</item>-      <item>regexp</item>-      <item>remez</item>-      <item>reset_fixed_operations</item>-      <item>rotate_scale</item>-      <item>rsdec</item>-      <item>rsenc</item>-      <item>samin</item>-      <item>SBBacksub</item>-      <item>SBEig</item>-      <item>SBFactor</item>-      <item>SBProd</item>-      <item>SBSolve</item>-      <item>Shi</item>-      <item>Si</item>-      <item>sinc_gsl</item>-      <item>spabs</item>-      <item>sparse</item>-      <item>spfind</item>-      <item>spimag</item>-      <item>spinv</item>-      <item>splu</item>-      <item>spreal</item>-      <item>SymBand</item>-      <item>synchrotron_1</item>-      <item>synchrotron_2</item>-      <item>syndtable</item>-      <item>taylorcoeff</item>-      <item>transport_2</item>-      <item>transport_3</item>-      <item>transport_4</item>-      <item>transport_5</item>-      <item>trisolve</item>-      <item>waitbar</item>-      <item>xmlread</item>-      <item>zeta</item>-      <item>zeta_int</item>-      <item>aar</item>-      <item>aarmam</item>-      <item>ac2poly</item>-      <item>ac2rc</item>-      <item>acorf</item>-      <item>acovf</item>-      <item>addpath</item>-      <item>ademodce</item>-      <item>adim</item>-      <item>adsmax</item>-      <item>amodce</item>-      <item>anderson_darling_cdf</item>-      <item>anderson_darling_test</item>-      <item>anovan</item>-      <item>apkconst</item>-      <item>append_save</item>-      <item>applylut</item>-      <item>ar2poly</item>-      <item>ar2rc</item>-      <item>arburg</item>-      <item>arcext</item>-      <item>arfit2</item>-      <item>ar_spa</item>-      <item>aryule</item>-      <item>assert</item>-      <item>au</item>-      <item>aucapture</item>-      <item>auload</item>-      <item>auplot</item>-      <item>aurecord</item>-      <item>ausave</item>-      <item>autumn</item>-      <item>average_moments</item>-      <item>awgn</item>-      <item>azimuth</item>-      <item>BandToFull</item>-      <item>BandToSparse</item>-      <item>base64encode</item>-      <item>battery</item>-      <item>bchpoly</item>-      <item>bestblk</item>-      <item>best_dir</item>-      <item>best_dir_cov</item>-      <item>betaln</item>-      <item>bfgs</item>-      <item>bfgsmin_example</item>-      <item>bi2de</item>-      <item>biacovf</item>-      <item>bilinear</item>-      <item>bisdemo</item>-      <item>bispec</item>-      <item>biterr</item>-      <item>blkdiag</item>-      <item>blkproc</item>-      <item>bmpwrite</item>-      <item>bone</item>-      <item>bound_convex</item>-      <item>boxcar</item>-      <item>boxplot</item>-      <item>brighten</item>-      <item>bs_gradient</item>-      <item>butter</item>-      <item>buttord</item>-      <item>bwborder</item>-      <item>bweuler</item>-      <item>bwlabel</item>-      <item>bwmorph</item>-      <item>bwselect</item>-      <item>calendar</item>-      <item>cceps</item>-      <item>cdiff</item>-      <item>cellstr</item>-      <item>char</item>-      <item>cheb</item>-      <item>cheb1ord</item>-      <item>cheb2ord</item>-      <item>chebwin</item>-      <item>cheby1</item>-      <item>cheby2</item>-      <item>chirp</item>-      <item>clf</item>-      <item>clip</item>-      <item>cmpermute</item>-      <item>cmunique</item>-      <item>cohere</item>-      <item>col2im</item>-      <item>colfilt</item>-      <item>colorgradient</item>-      <item>comms</item>-      <item>compand</item>-      <item>complex</item>-      <item>concat</item>-      <item>conndef</item>-      <item>content</item>-      <item>contents</item>-      <item>Contents</item>-      <item>contourf</item>-      <item>convhull</item>-      <item>convmtx</item>-      <item>cool</item>-      <item>copper</item>-      <item>corr2</item>-      <item>cosets</item>-      <item>count</item>-      <item>covm</item>-      <item>cplxpair</item>-      <item>cquadnd</item>-      <item>create_lookup_table</item>-      <item>crule</item>-      <item>crule2d</item>-      <item>crule2dgen</item>-      <item>csape</item>-      <item>csapi</item>-      <item>csd</item>-      <item>csvread</item>-      <item>csvwrite</item>-      <item>ctranspose</item>-      <item>cumtrapz</item>-      <item>czt</item>-      <item>d2_min</item>-      <item>datenum</item>-      <item>datestr</item>-      <item>datevec</item>-      <item>dct</item>-      <item>dct2</item>-      <item>dctmtx</item>-      <item>de2bi</item>-      <item>deal</item>-      <item>decimate</item>-      <item>decode</item>-      <item>deg2rad</item>-      <item>del2</item>-      <item>delaunay</item>-      <item>delaunay3</item>-      <item>delta_method</item>-      <item>demo</item>-      <item>demodmap</item>-      <item>deriv</item>-      <item>detrend</item>-      <item>dfdp</item>-      <item>dftmtx</item>-      <item>dhbar</item>-      <item>dilate</item>-      <item>dispatch</item>-      <item>distance</item>-      <item>dlmread</item>-      <item>dlmwrite</item>-      <item>dos</item>-      <item>double</item>-      <item>drawnow</item>-      <item>durlev</item>-      <item>dxfwrite</item>-      <item>edge</item>-      <item>edit</item>-      <item>ellip</item>-      <item>ellipdemo</item>-      <item>ellipj</item>-      <item>ellipke</item>-      <item>ellipord</item>-      <item>__ellip_ws</item>-      <item>__ellip_ws_min</item>-      <item>encode</item>-      <item>eomday</item>-      <item>erode</item>-      <item>example</item>-      <item>ExampleEigenValues</item>-      <item>ExampleGenEigenValues</item>-      <item>expdemo</item>-      <item>expfit</item>-      <item>eyediagram</item>-      <item>factor</item>-      <item>factorial</item>-      <item>fail</item>-      <item>fcnchk</item>-      <item>feedback</item>-      <item>fem_test</item>-      <item>ff2n</item>-      <item>fftconv2</item>-      <item>fieldnames</item>-      <item>fill</item>-      <item>fill3</item>-      <item>filter2</item>-      <item>filtfilt</item>-      <item>filtic</item>-      <item>findsym</item>-      <item>fir1</item>-      <item>fir2</item>-      <item>fixedpoint</item>-      <item>flag</item>-      <item>flag_implicit_samplerate</item>-      <item>flattopwin</item>-      <item>flix</item>-      <item>float</item>-      <item>fmin</item>-      <item>fminbnd</item>-      <item>fmins</item>-      <item>fminunc</item>-      <item>fnder</item>-      <item>fnplt</item>-      <item>fnval</item>-      <item>fplot</item>-      <item>freqs</item>-      <item>freqs_plot</item>-      <item>fsort</item>-      <item>fullfact</item>-      <item>FullToBand</item>-      <item>funm</item>-      <item>fzero</item>-      <item>gammaln</item>-      <item>gapTest</item>-      <item>gaussian</item>-      <item>gausswin</item>-      <item>gconv</item>-      <item>gconvmtx</item>-      <item>gdeconv</item>-      <item>gdftmtx</item>-      <item>gen2par</item>-      <item>geomean</item>-      <item>getfield</item>-      <item>getfields</item>-      <item>gfft</item>-      <item>gftable</item>-      <item>gfweight</item>-      <item>gget</item>-      <item>gifft</item>-      <item>ginput</item>-      <item>gmm_estimate</item>-      <item>gmm_example</item>-      <item>gmm_obj</item>-      <item>gmm_results</item>-      <item>gmm_variance</item>-      <item>gmm_variance_inefficient</item>-      <item>gquad</item>-      <item>gquad2d</item>-      <item>gquad2d6</item>-      <item>gquad2dgen</item>-      <item>gquad6</item>-      <item>gquadnd</item>-      <item>grace_octave_path</item>-      <item>gradient</item>-      <item>grayslice</item>-      <item>grep</item>-      <item>grid</item>-      <item>griddata</item>-      <item>groots</item>-      <item>grpdelay</item>-      <item>grule</item>-      <item>grule2d</item>-      <item>grule2dgen</item>-      <item>hadamard</item>-      <item>hammgen</item>-      <item>hankel</item>-      <item>hann</item>-      <item>harmmean</item>-      <item>hilbert</item>-      <item>histeq</item>-      <item>histfit</item>-      <item>histo</item>-      <item>histo2</item>-      <item>histo3</item>-      <item>histo4</item>-      <item>hot</item>-      <item>hsv</item>-      <item>hup</item>-      <item>idct</item>-      <item>idct2</item>-      <item>idplot</item>-      <item>idsim</item>-      <item>ifftshift</item>-      <item>im2bw</item>-      <item>im2col</item>-      <item>imadjust</item>-      <item>imginfo</item>-      <item>imhist</item>-      <item>imnoise</item>-      <item>impad</item>-      <item>impz</item>-      <item>imread</item>-      <item>imrotate</item>-      <item>imshear</item>-      <item>imtranslate</item>-      <item>imwrite</item>-      <item>innerfun</item>-      <item>inputname</item>-      <item>interp</item>-      <item>interp1</item>-      <item>interp2</item>-      <item>interpft</item>-      <item>intersect</item>-      <item>invest0</item>-      <item>invest1</item>-      <item>invfdemo</item>-      <item>invfreq</item>-      <item>invfreqs</item>-      <item>invfreqz</item>-      <item>inz</item>-      <item>irsa_act</item>-      <item>irsa_actcore</item>-      <item>irsa_check</item>-      <item>irsa_dft</item>-      <item>irsa_dftfp</item>-      <item>irsa_genreal</item>-      <item>irsa_idft</item>-      <item>irsa_isregular</item>-      <item>irsa_jitsp</item>-      <item>irsa_mdsp</item>-      <item>irsa_normalize</item>-      <item>irsa_plotdft</item>-      <item>irsa_resample</item>-      <item>irsa_rgenreal</item>-      <item>isa</item>-      <item>isbw</item>-      <item>isdir</item>-      <item>isequal</item>-      <item>isfield</item>-      <item>isgray</item>-      <item>isind</item>-      <item>ismember</item>-      <item>isprime</item>-      <item>isrgb</item>-      <item>issparse</item>-      <item>isunix</item>-      <item>jet</item>-      <item>kaiser</item>-      <item>kaiserord</item>-      <item>lambertw</item>-      <item>lattice</item>-      <item>lauchli</item>-      <item>leasqr</item>-      <item>leasqrdemo</item>-      <item>legend</item>-      <item>legendre</item>-      <item>levinson</item>-      <item>lin2mu</item>-      <item>line_min</item>-      <item>lloyds</item>-      <item>lookup</item>-      <item>lookup_table</item>-      <item>lpc</item>-      <item>lp_test</item>-      <item>mad</item>-      <item>magic</item>-      <item>makelut</item>-      <item>MakeShears</item>-      <item>map</item>-      <item>mat2gray</item>-      <item>mat2str</item>-      <item>mdsmax</item>-      <item>mean2</item>-      <item>medfilt2</item>-      <item>meshc</item>-      <item>minimize</item>-      <item>minpol</item>-      <item>mkpp</item>-      <item>mktheta</item>-      <item>mle_estimate</item>-      <item>mle_example</item>-      <item>mle_obj</item>-      <item>mle_results</item>-      <item>mle_variance</item>-      <item>modmap</item>-      <item>mu2lin</item>-      <item>mvaar</item>-      <item>mvar</item>-      <item>mvfilter</item>-      <item>mvfreqz</item>-      <item>myfeval</item>-      <item>nanmax</item>-      <item>nanmean</item>-      <item>nanmedian</item>-      <item>nanmin</item>-      <item>nanstd</item>-      <item>nansum</item>-      <item>ncauer</item>-      <item>nchoosek</item>-      <item>ncrule</item>-      <item>ndims</item>-      <item>nelder_mead_min</item>-      <item>newmark</item>-      <item>nlfilter</item>-      <item>nlnewmark</item>-      <item>__nlnewmark_fcn__</item>-      <item>nmsmax</item>-      <item>nonzeros</item>-      <item>normplot</item>-      <item>now</item>-      <item>nrm</item>-      <item>nthroot</item>-      <item>nze</item>-      <item>OCTAVE_FORGE_VERSION</item>-      <item>ode23</item>-      <item>ode45</item>-      <item>ode78</item>-      <item>optimset</item>-      <item>ordfilt2</item>-      <item>orient</item>-      <item>pacf</item>-      <item>padarray</item>-      <item>parameterize</item>-      <item>parcor</item>-      <item>pareto</item>-      <item>pascal</item>-      <item>patch</item>-      <item>pburg</item>-      <item>pcg</item>-      <item>pchip</item>-      <item>pcolor</item>-      <item>pcr</item>-      <item>peaks</item>-      <item>penddot</item>-      <item>pendulum</item>-      <item>perms</item>-      <item>pie</item>-      <item>pink</item>-      <item>plot3</item>-      <item>__plt3__</item>-      <item>poly2ac</item>-      <item>poly2ar</item>-      <item>poly_2_ex</item>-      <item>poly2mask</item>-      <item>poly2rc</item>-      <item>poly2sym</item>-      <item>poly2th</item>-      <item>polyarea</item>-      <item>polyconf</item>-      <item>polyder</item>-      <item>polyderiv</item>-      <item>polygcd</item>-      <item>polystab</item>-      <item>__power</item>-      <item>ppval</item>-      <item>prctile</item>-      <item>prettyprint</item>-      <item>prettyprint_c</item>-      <item>primes</item>-      <item>princomp</item>-      <item>print</item>-      <item>prism</item>-      <item>proplan</item>-      <item>pulstran</item>-      <item>pwelch</item>-      <item>pyulear</item>-      <item>qaskdeco</item>-      <item>qaskenco</item>-      <item>qtdecomp</item>-      <item>qtgetblk</item>-      <item>qtsetblk</item>-      <item>quad2dc</item>-      <item>quad2dcgen</item>-      <item>quad2dg</item>-      <item>quad2dggen</item>-      <item>quadc</item>-      <item>quadg</item>-      <item>quadl</item>-      <item>quadndg</item>-      <item>quantiz</item>-      <item>quiver</item>-      <item>rad2deg</item>-      <item>rainbow</item>-      <item>randerr</item>-      <item>randint</item>-      <item>randsrc</item>-      <item>rat</item>-      <item>rats</item>-      <item>rc2ac</item>-      <item>rc2ar</item>-      <item>rc2poly</item>-      <item>rceps</item>-      <item>read_options</item>-      <item>read_pdb</item>-      <item>rectpuls</item>-      <item>resample</item>-      <item>rgb2gray</item>-      <item>rk2fixed</item>-      <item>rk4fixed</item>-      <item>rk8fixed</item>-      <item>rmfield</item>-      <item>rmle</item>-      <item>rmpath</item>-      <item>roicolor</item>-      <item>rosser</item>-      <item>rotparams</item>-      <item>rotv</item>-      <item>rref</item>-      <item>rsdecof</item>-      <item>rsencof</item>-      <item>rsgenpoly</item>-      <item>samin_example</item>-      <item>save_vrml</item>-      <item>sbispec</item>-      <item>scale_data</item>-      <item>scatter</item>-      <item>scatterplot</item>-      <item>select_3D_points</item>-      <item>selmo</item>-      <item>setdiff</item>-      <item>setfield</item>-      <item>setfields</item>-      <item>setxor</item>-      <item>sftrans</item>-      <item>sgolay</item>-      <item>sgolayfilt</item>-      <item>sinvest1</item>-      <item>slurp_file</item>-      <item>sortrows</item>-      <item>sound</item>-      <item>soundsc</item>-      <item>spdiags</item>-      <item>specgram</item>-      <item>speed</item>-      <item>speye</item>-      <item>spfun</item>-      <item>sphcat</item>-      <item>spline</item>-      <item>splot</item>-      <item>spones</item>-      <item>sprand</item>-      <item>sprandn</item>-      <item>spring</item>-      <item>spstats</item>-      <item>spsum</item>-      <item>sp_test</item>-      <item>sptest</item>-      <item>spvcat</item>-      <item>spy</item>-      <item>std2</item>-      <item>stem</item>-      <item>str2double</item>-      <item>strcmpi</item>-      <item>stretchlim</item>-      <item>strfind</item>-      <item>strmatch</item>-      <item>strncmp</item>-      <item>strncmpi</item>-      <item>strsort</item>-      <item>strtok</item>-      <item>strtoz</item>-      <item>struct</item>-      <item>strvcat</item>-      <item>summer</item>-      <item>sumskipnan</item>-      <item>surf</item>-      <item>surfc</item>-      <item>sym2poly</item>-      <item>symerr</item>-      <item>symfsolve</item>-      <item>tabulate</item>-      <item>tar</item>-      <item>temp_name</item>-      <item>test</item>-      <item>test_d2_min_1</item>-      <item>test_d2_min_2</item>-      <item>test_d2_min_3</item>-      <item>test_ellipj</item>-      <item>test_fminunc_1</item>-      <item>testimio</item>-      <item>test_inline_1</item>-      <item>test_min_1</item>-      <item>test_min_2</item>-      <item>test_min_3</item>-      <item>test_min_4</item>-      <item>test_minimize_1</item>-      <item>test_nelder_mead_min_1</item>-      <item>test_nelder_mead_min_2</item>-      <item>test_sncndn</item>-      <item>test_struct</item>-      <item>test_vmesh</item>-      <item>test_vrml_faces</item>-      <item>test_wpolyfit</item>-      <item>text</item>-      <item>textread</item>-      <item>tf2zp</item>-      <item>tfe</item>-      <item>thfm</item>-      <item>tics</item>-      <item>toeplitz</item>-      <item>toggle_grace_use</item>-      <item>transpose</item>-      <item>trapz</item>-      <item>triang</item>-      <item>tril</item>-      <item>trimmean</item>-      <item>tripuls</item>-      <item>trisolve</item>-      <item>triu</item>-      <item>tsademo</item>-      <item>tsearchdemo</item>-      <item>ucp</item>-      <item>uintlut</item>-      <item>unique</item>-      <item>unix</item>-      <item>unmkpp</item>-      <item>unscale_parameters</item>-      <item>vec2mat</item>-      <item>view</item>-      <item>vmesh</item>-      <item>voronoi</item>-      <item>voronoin</item>-      <item>vrml_arrow</item>-      <item>vrml_Background</item>-      <item>vrml_browse</item>-      <item>vrml_cyl</item>-      <item>vrml_demo_tutorial_1</item>-      <item>vrml_demo_tutorial_2</item>-      <item>vrml_demo_tutorial_3</item>-      <item>vrml_demo_tutorial_4</item>-      <item>vrml_ellipsoid</item>-      <item>vrml_faces</item>-      <item>vrml_flatten</item>-      <item>vrml_frame</item>-      <item>vrml_group</item>-      <item>vrml_kill</item>-      <item>vrml_lines</item>-      <item>vrml_material</item>-      <item>vrml_parallelogram</item>-      <item>vrml_PointLight</item>-      <item>vrml_points</item>-      <item>vrml_select_points</item>-      <item>vrml_surf</item>-      <item>vrml_text</item>-      <item>vrml_thick_surf</item>-      <item>vrml_transfo</item>-      <item>wavread</item>-      <item>wavwrite</item>-      <item>weekday</item>-      <item>wgn</item>-      <item>white</item>-      <item>wilkinson</item>-      <item>winter</item>-      <item>wpolyfit</item>-      <item>wpolyfitdemo</item>-      <item>write_pdb</item>-      <item>wsolve</item>-      <item>xcorr</item>-      <item>xcorr2</item>-      <item>xcov</item>-      <item>xlsread</item>-      <item>xmlwrite</item>-      <item>y2res</item>-      <item>zero_count</item>-      <item>zoom</item>-      <item>zp2tf</item>-      <item>zplane</item>-      <item>zscore</item>-    </list>-    -    <contexts>--      <context name="_normal" attribute="Normal Text" lineEndContext="#stay">--        <!-- Code folding -->-        <!--TODO: with this implementation, code folding will close a block also with a wrong-        end*: for istance, for can be closed by endif. This is done because the catchall end -        keyword is widely used to close a number of blocks (including if and for).-        If you have an improvement, please contribute it!-->-        <RegExpr context="#stay" attribute="Keyword" String="\b(for)\b" beginRegion="block" />-        <RegExpr context="#stay" attribute="Keyword" String="\b(endfor)\b" endRegion="block" />-        <RegExpr context="#stay" attribute="Keyword" String="\b(if)\b" beginRegion="block" />-        <RegExpr context="#stay" attribute="Keyword" String="\b(endif)\b" endRegion="block" />-        <RegExpr context="#stay" attribute="Keyword" String="\b(do)\b" beginRegion="block" />-        <RegExpr context="#stay" attribute="Keyword" String="\b(until)\b" endRegion="block" />-        <RegExpr context="#stay" attribute="Keyword" String="\b(while)\b" beginRegion="block" />-        <RegExpr context="#stay" attribute="Keyword" String="\b(endwhile)\b" endRegion="block" />-        <RegExpr context="#stay" attribute="Keyword" String="\b(function)\b" beginRegion="block" />-        <RegExpr context="#stay" attribute="Keyword" String="\b(endfunction)\b" endRegion="block" />-        <RegExpr context="#stay" attribute="Keyword" String="\b(switch)\b" beginRegion="Switch" />-        <RegExpr context="#stay" attribute="Keyword" String="\b(endswitch)\b" endRegion="Switch" />-        <RegExpr context="#stay" attribute="Keyword" String="\b(try)\b" beginRegion="Try" />-        <RegExpr context="#stay" attribute="Keyword" String="\b(end_try_catch)\b" endRegion="Try" />-        <!-- Catchall end keyword -->-        <RegExpr context="#stay" attribute="Keyword" String="\b(end)\b" endRegion="block" />-        -        <!-- Look-ahead for adjoint ' after variable, number literal, closing braces and .' -->-        <RegExpr context="_adjoint" attribute="Variable" String="[a-zA-Z]\w*(?=')" />-        <RegExpr context="_adjoint" attribute="Number" String="(\d+(\.\d+)?|\.\d+)([eE][+-]?\d+)?[ij]?(?=')" />-        <RegExpr context="_adjoint" attribute="Delimiter" String="[\)\]}](?=')" />-        <RegExpr context="_adjoint" attribute="Operator" String="\.'(?=')" />--        <!-- If ' is not the adjoint operator, it starts a string or an unterminated string;-        strings can be also with ", and accept the respective delimiter in them either-        by doubling it ('', "") or by escaping it (\', \") -->-        <RegExpr context="#stay" attribute="String" String="'([^'\\]|''|\\'|\\[^'])*'(?=[^']|$)" />-        <RegExpr context="#stay" attribute="Incomplete String" String="'([^']|''|\\')*" />-        <RegExpr context="#stay" attribute="String" String="&quot;([^&quot;\\]|&quot;&quot;|\\&quot;|\\[^&quot;])*&quot;(?=[^&quot;]|$)" />-        <RegExpr context="#stay" attribute="Incomplete String" String="&quot;([^&quot;]|&quot;&quot;|\\&quot;)*" />-        -        <!-- Handling of keywords, comments, functions, identifiers, numbers and braces -->-        <keyword context="#stay" attribute="Keyword" String="keywords" />-        <keyword context="#stay" attribute="Commands" String="commands" />-        <keyword context="#stay" attribute="Functions" String="functions" />-        <keyword context="#stay" attribute="Builtin" String="builtin"/>-        <keyword context="#stay" attribute="Forge" String="forge" />-        <RegExpr context="#stay" attribute="Comment" String="[%#].*$" />-        <RegExpr context="#stay" attribute="Variable" String="[a-zA-Z]\w*" />-        <RegExpr context="#stay" attribute="Number" String="(\d+(\.\d+)?|\.\d+)([eE][+-]?\d+)?[ij]?" />-        <AnyChar context="#stay" attribute="Delimiter" String="()[]{}"/>-              -        <!-- Three- and two-character operators -->-        <StringDetect context="#stay" attribute="Operator" String="..."/>-        <StringDetect context="#stay" attribute="Operator" String="=="/>-        <StringDetect context="#stay" attribute="Operator" String="~="/>-        <StringDetect context="#stay" attribute="Operator" String="!="/>-        <StringDetect context="#stay" attribute="Operator" String="&lt;="/>-        <StringDetect context="#stay" attribute="Operator" String="&gt;="/>-        <StringDetect context="#stay" attribute="Operator" String="&lt;&gt;"/>-        <StringDetect context="#stay" attribute="Operator" String="&amp;&amp;"/>-        <StringDetect context="#stay" attribute="Operator" String="||"/>-        <StringDetect context="#stay" attribute="Operator" String="++"/>-        <StringDetect context="#stay" attribute="Operator" String="--"/>-        <StringDetect context="#stay" attribute="Operator" String="**"/>-        <StringDetect context="#stay" attribute="Operator" String=".*"/>-        <StringDetect context="#stay" attribute="Operator" String=".**"/>-        <StringDetect context="#stay" attribute="Operator" String=".^"/>-        <StringDetect context="#stay" attribute="Operator" String="./"/>-        <StringDetect context="#stay" attribute="Operator" String=".'"/>--        <!-- Single-character operators -->-        <AnyChar context="#stay" attribute="Operator" String="!&quot;%(*+,/;=>[]|~#&amp;)-:&lt;&gt;\^"/>-        -      </context>---      <!--Context entered after encountering an ' adjoint operator -->-      <context name="_adjoint" attribute="Operator" lineEndContext="#pop">-        <RegExpr context="#pop" attribute="Operator" String="'+" />-      </context>---    </contexts>--    <itemDatas>-      <itemData name="Normal Text" defStyleNum="dsNormal" spellChecking="false"/>-      <itemData name="Variable" defStyleNum="dsNormal" spellChecking="false"/>-      <itemData name="Operator" defStyleNum="dsNormal" spellChecking="false"/>-      <itemData name="Number" defStyleNum="dsFloat" spellChecking="false"/>-      <itemData name="Delimiter" defStyleNum="dsNormal" spellChecking="false"/>-      <itemData name="String" defStyleNum="dsString" color="#b20000"/>-      <itemData name="Incomplete String" defStyleNum="dsChar" color="#a020f0" spellChecking="false"/>-      <itemData name="Keyword"  defStyleNum="dsNormal" color="#0000ff" spellChecking="false"/>-      <itemData name="Comment" defStyleNum="dsComment" color="#009900"/>-      <itemData name="Functions" defStyleNum="dsFunction" color="#0000ff" selColor="#00ff00" bold="1" italic="1" spellChecking="false"/>-      <itemData name="Forge" defStyleNum="dsFunction" color="#000099" selColor="#009900" bold="1" italic="1" spellChecking="false"/>-      <itemData name="Builtin" defStyleNum="dsBaseN" color="#b28c00" spellChecking="false"/>-      <itemData name="Commands" defStyleNum="dsFunction" color="#b28c00" spellChecking="false"/>-    </itemDatas>--  </highlighting>--  <general>-    <comments>-      <comment name="singleLine" start="%" />-      <comment name="singleLine" start="#" />-    </comments>-    <keywords casesensitive="1"/>+  =====================================================================================================+  Octave syntax highlighting file for the KDE editors Kate and Kwrite+  =====================================================================================================+      based on Octave 4.2.0+      keywords, functions list bases on __builtins__ and __keywords__ commands. For details see+      https://stackoverflow.com/questions/49840280/list-of-all-built-in-symbols-in-matlab-octave+      Commands list bases on parsing source code (search inside embedded into code documentation+      (by "@deftypefn") for commands, used without brackets).+      (grep '@deftypefn' -r * | grep -v '@deftypefnx' | grep -v '(')+++  Change log:+  16-Dec-04  Created from Matlab and Scilab files.+  19-Feb-04  Update from Octave 4.2.0 (updated by sirgienko.n <warquark@gmail.com>)++  Author: Federico Zenith, Norwegian University of Science and Technology+  Thanks to Luis Silvestre for previous version and suggestions+-->+++<language name="Octave" version="5" kateversion="5.0" section="Scientific" extensions="*.octave;*.m;*.M" mimetype="text/octave" casesensitive="1" license="GPL" author="Luis Silvestre and Federico Zenith">++  <highlighting>++    <!-- Reserved keywords in Octave -->+    <list name="keywords">+      <item>case</item>+      <item>catch</item>+      <item>continue</item>+      <item>else</item>+      <item>elseif</item>+      <item>global</item>+      <item>otherwise</item>+      <item>return</item>+      <item>static</item>+      <item>persistent</item>+      <item>unwind_protect_cleanup</item>+      <item>varargin</item>+      <item>varargout</item>+      <item>break</item>+      <item>for</item>+      <item>endfor</item>+      <item>if</item>+      <item>endif</item>+      <item>do</item>+      <item>until</item>+      <item>while</item>+      <item>endwhile</item>+      <item>function</item>+      <item>endfunction</item>+      <item>unwind_protect</item>+      <item>end_unwind_protect</item>+      <item>parfor</item>+      <item>endparfor</item>+      <item>classdef</item>+      <item>endclassdef</item>+      <item>enumeration</item>+      <item>endenumeration</item>+      <item>events</item>+      <item>endevents</item>+      <item>methods</item>+      <item>endmethods</item>+      <item>properties</item>+      <item>endproperties</item>+      <item>switch</item>+      <item>endswitch</item>+      <item>try</item>+      <item>end_try_catch</item>+      <item>end</item>+    </list>++    <list name="builtin">+      <item>EDITOR</item>+      <item>EXEC_PATH</item>+      <item>F_DUPFD</item>+      <item>F_GETFD</item>+      <item>F_GETFL</item>+      <item>F_SETFD</item>+      <item>F_SETFL</item>+      <item>IMAGE_PATH</item>+      <item>J</item>+      <item>OCTAVE_HOME</item>+      <item>OCTAVE_VERSION</item>+      <item>O_APPEND</item>+      <item>O_ASYNC</item>+      <item>O_CREAT</item>+      <item>O_EXCL</item>+      <item>O_NONBLOCK</item>+      <item>O_RDONLY</item>+      <item>O_RDWR</item>+      <item>O_SYNC</item>+      <item>O_TRUNC</item>+      <item>O_WRONLY</item>+      <item>PAGER</item>+      <item>PAGER_FLAGS</item>+      <item>PS1</item>+      <item>PS2</item>+      <item>PS4</item>+      <item>P_tmpdir</item>+      <item>SEEK_CUR</item>+      <item>SEEK_END</item>+      <item>SEEK_SET</item>+      <item>SIG</item>+      <item>S_ISBLK</item>+      <item>S_ISCHR</item>+      <item>S_ISDIR</item>+      <item>S_ISFIFO</item>+      <item>S_ISLNK</item>+      <item>S_ISREG</item>+      <item>S_ISSOCK</item>+      <item>WCONTINUE</item>+      <item>WCOREDUMP</item>+      <item>WEXITSTATUS</item>+      <item>WIFCONTINUED</item>+      <item>WIFEXITED</item>+      <item>WIFSIGNALED</item>+      <item>WIFSTOPPED</item>+      <item>WNOHANG</item>+      <item>WSTOPSIG</item>+      <item>WTERMSIG</item>+      <item>WUNTRACED</item>+      <item>__accumarray_max__</item>+      <item>__accumarray_min__</item>+      <item>__accumarray_sum__</item>+      <item>__accumdim_sum__</item>+      <item>__builtins__</item>+      <item>__calc_dimensions__</item>+      <item>__compactformat__</item>+      <item>__contourc__</item>+      <item>__current_scope__</item>+      <item>__db_next_breakpoint_quiet__</item>+      <item>__diaryfile__</item>+      <item>__diarystate__</item>+      <item>__dispatch__</item>+      <item>__display_tokens__</item>+      <item>__dsearchn__</item>+      <item>__dump_load_path__</item>+      <item>__dump_symtab_info__</item>+      <item>__dump_typeinfo__</item>+      <item>__echostate__</item>+      <item>__fieldnames__</item>+      <item>__fnmatch__</item>+      <item>__formatstring__</item>+      <item>__ftp__</item>+      <item>__ftp_ascii__</item>+      <item>__ftp_binary__</item>+      <item>__ftp_close__</item>+      <item>__ftp_cwd__</item>+      <item>__ftp_delete__</item>+      <item>__ftp_dir__</item>+      <item>__ftp_mget__</item>+      <item>__ftp_mkdir__</item>+      <item>__ftp_mode__</item>+      <item>__ftp_mput__</item>+      <item>__ftp_pwd__</item>+      <item>__ftp_rename__</item>+      <item>__ftp_rmdir__</item>+      <item>__get__</item>+      <item>__get_cmdline_fcn_txt__</item>+      <item>__go_axes__</item>+      <item>__go_axes_init__</item>+      <item>__go_delete__</item>+      <item>__go_execute_callback__</item>+      <item>__go_figure__</item>+      <item>__go_figure_handles__</item>+      <item>__go_handles__</item>+      <item>__go_hggroup__</item>+      <item>__go_image__</item>+      <item>__go_light__</item>+      <item>__go_line__</item>+      <item>__go_patch__</item>+      <item>__go_surface__</item>+      <item>__go_text__</item>+      <item>__go_uibuttongroup__</item>+      <item>__go_uicontextmenu__</item>+      <item>__go_uicontrol__</item>+      <item>__go_uimenu__</item>+      <item>__go_uipanel__</item>+      <item>__go_uipushtool__</item>+      <item>__go_uitoggletool__</item>+      <item>__go_uitoolbar__</item>+      <item>__gud_mode__</item>+      <item>__ichol0__</item>+      <item>__icholt__</item>+      <item>__ilu0__</item>+      <item>__iluc__</item>+      <item>__ilutp__</item>+      <item>__image_pixel_size__</item>+      <item>__is_handle_visible__</item>+      <item>__java_exit__</item>+      <item>__java_get__</item>+      <item>__java_init__</item>+      <item>__java_set__</item>+      <item>__keywords__</item>+      <item>__lexer_debug_flag__</item>+      <item>__lin_interpn__</item>+      <item>__list_functions__</item>+      <item>__luinc__</item>+      <item>__magick_finfo__</item>+      <item>__magick_formats__</item>+      <item>__magick_ping__</item>+      <item>__magick_read__</item>+      <item>__magick_write__</item>+      <item>__meta_class_query__</item>+      <item>__meta_get_package__</item>+      <item>__methods__</item>+      <item>__mkdir__</item>+      <item>__octave_config_info__</item>+      <item>__octave_link_edit_file__</item>+      <item>__octave_link_enabled__</item>+      <item>__octave_link_file_dialog__</item>+      <item>__octave_link_input_dialog__</item>+      <item>__octave_link_list_dialog__</item>+      <item>__octave_link_message_dialog__</item>+      <item>__octave_link_question_dialog__</item>+      <item>__octave_link_show_doc__</item>+      <item>__octave_link_show_preferences__</item>+      <item>__open_with_system_app__</item>+      <item>__operators__</item>+      <item>__parent_classes__</item>+      <item>__parse_file__</item>+      <item>__parser_debug_flag__</item>+      <item>__pathorig__</item>+      <item>__pchip_deriv__</item>+      <item>__profiler_data__</item>+      <item>__profiler_enable__</item>+      <item>__profiler_reset__</item>+      <item>__qp__</item>+      <item>__request_drawnow__</item>+      <item>__sort_rows_idx__</item>+      <item>__superclass_reference__</item>+      <item>__textscan__</item>+      <item>__token_count__</item>+      <item>__usage__</item>+      <item>__varval__</item>+      <item>__version_info__</item>+      <item>__wglob__</item>+      <item>__which__</item>+      <item>__zoom__</item>+    </list>+    +    <list name="commands">+      <item>Inf</item>+      <item>NaN</item>+      <item>e</item>+      <item>eps</item>+      <item>pi</item>+      <item>realmax</item>+      <item>realmin</item>+      <item>I</item>+      <item>NA</item>+      <item>dbstop</item>+      <item>dbclear</item>+      <item>dbstatus</item>+      <item>dbwhere</item>+      <item>dbtype</item>+      <item>dblist</item>+      <item>dbstack</item>+      <item>dbup</item>+      <item>dbdown</item>+      <item>dbstep</item>+      <item>dbcont</item>+      <item>dbquit</item>+      <item>cd</item>+      <item>rmdir</item>+      <item>link</item>+      <item>symlink</item>+      <item>readlink</item>+      <item>rename</item>+      <item>diary</item>+      <item>more</item>+      <item>exit</item>+      <item>load</item>+      <item>save</item>+      <item>edit_history</item>+      <item>history</item>+      <item>run_history</item>+      <item>who</item>+      <item>whos</item>+      <item>clear</item>+      <item>format</item>+      <item>echo</item>+    </list>+    +    <list name="functions">+      <item>__actual_axis_position__</item>+      <item>__all_opts__</item>+      <item>__clabel__</item>+      <item>__default_plot_options__</item>+      <item>__delaunayn__</item>+      <item>__eigs__</item>+      <item>__finish__</item>+      <item>__fltk_check__</item>+      <item>__fltk_uigetfile__</item>+      <item>__getlegenddata__</item>+      <item>__glpk__</item>+      <item>__gnuplot_drawnow__</item>+      <item>__gripe_missing_component__</item>+      <item>__have_feature__</item>+      <item>__have_gnuplot__</item>+      <item>__init_fltk__</item>+      <item>__init_gnuplot__</item>+      <item>__makeinfo__</item>+      <item>__next_line_color__</item>+      <item>__next_line_style__</item>+      <item>__opengl_info__</item>+      <item>__osmesa_print__</item>+      <item>__player_audioplayer__</item>+      <item>__player_get_channels__</item>+      <item>__player_get_fs__</item>+      <item>__player_get_id__</item>+      <item>__player_get_nbits__</item>+      <item>__player_get_sample_number__</item>+      <item>__player_get_tag__</item>+      <item>__player_get_total_samples__</item>+      <item>__player_get_userdata__</item>+      <item>__player_isplaying__</item>+      <item>__player_pause__</item>+      <item>__player_play__</item>+      <item>__player_playblocking__</item>+      <item>__player_resume__</item>+      <item>__player_set_fs__</item>+      <item>__player_set_tag__</item>+      <item>__player_set_userdata__</item>+      <item>__player_stop__</item>+      <item>__plt_get_axis_arg__</item>+      <item>__pltopt__</item>+      <item>__printf_assert__</item>+      <item>__prog_output_assert__</item>+      <item>__recorder_audiorecorder__</item>+      <item>__recorder_get_channels__</item>+      <item>__recorder_get_fs__</item>+      <item>__recorder_get_id__</item>+      <item>__recorder_get_nbits__</item>+      <item>__recorder_get_sample_number__</item>+      <item>__recorder_get_tag__</item>+      <item>__recorder_get_total_samples__</item>+      <item>__recorder_get_userdata__</item>+      <item>__recorder_getaudiodata__</item>+      <item>__recorder_isrecording__</item>+      <item>__recorder_pause__</item>+      <item>__recorder_record__</item>+      <item>__recorder_recordblocking__</item>+      <item>__recorder_resume__</item>+      <item>__recorder_set_fs__</item>+      <item>__recorder_set_tag__</item>+      <item>__recorder_set_userdata__</item>+      <item>__recorder_stop__</item>+      <item>__run_test_suite__</item>+      <item>__unimplemented__</item>+      <item>__voronoi__</item>+      <item>abs</item>+      <item>accumarray</item>+      <item>accumdim</item>+      <item>acos</item>+      <item>acosd</item>+      <item>acosh</item>+      <item>acot</item>+      <item>acotd</item>+      <item>acoth</item>+      <item>acsc</item>+      <item>acscd</item>+      <item>acsch</item>+      <item>add_input_event_hook</item>+      <item>addlistener</item>+      <item>addpath</item>+      <item>addpref</item>+      <item>addproperty</item>+      <item>addtodate</item>+      <item>airy</item>+      <item>all</item>+      <item>allchild</item>+      <item>allow_noninteger_range_as_index</item>+      <item>amd</item>+      <item>ancestor</item>+      <item>and</item>+      <item>angle</item>+      <item>annotation</item>+      <item>anova</item>+      <item>ans</item>+      <item>any</item>+      <item>arch_fit</item>+      <item>arch_rnd</item>+      <item>arch_test</item>+      <item>area</item>+      <item>arg</item>+      <item>argnames</item>+      <item>argv</item>+      <item>arma_rnd</item>+      <item>arrayfun</item>+      <item>asctime</item>+      <item>asec</item>+      <item>asecd</item>+      <item>asech</item>+      <item>asin</item>+      <item>asind</item>+      <item>asinh</item>+      <item>assert</item>+      <item>assignin</item>+      <item>atan</item>+      <item>atan2</item>+      <item>atan2d</item>+      <item>atand</item>+      <item>atanh</item>+      <item>atexit</item>+      <item>audiodevinfo</item>+      <item>audioformats</item>+      <item>audioinfo</item>+      <item>audioread</item>+      <item>audiowrite</item>+      <item>autoload</item>+      <item>autoreg_matrix</item>+      <item>autumn</item>+      <item>available_graphics_toolkits</item>+      <item>axes</item>+      <item>axis</item>+      <item>balance</item>+      <item>bandwidth</item>+      <item>bar</item>+      <item>barh</item>+      <item>bartlett</item>+      <item>bartlett_test</item>+      <item>base2dec</item>+      <item>base64_decode</item>+      <item>base64_encode</item>+      <item>beep</item>+      <item>beep_on_error</item>+      <item>bessel</item>+      <item>besselh</item>+      <item>besseli</item>+      <item>besselj</item>+      <item>besselk</item>+      <item>bessely</item>+      <item>beta</item>+      <item>betacdf</item>+      <item>betainc</item>+      <item>betaincinv</item>+      <item>betainv</item>+      <item>betaln</item>+      <item>betapdf</item>+      <item>betarnd</item>+      <item>bicg</item>+      <item>bicgstab</item>+      <item>bicubic</item>+      <item>bin2dec</item>+      <item>bincoeff</item>+      <item>binocdf</item>+      <item>binoinv</item>+      <item>binopdf</item>+      <item>binornd</item>+      <item>bitand</item>+      <item>bitcmp</item>+      <item>bitget</item>+      <item>bitmax</item>+      <item>bitor</item>+      <item>bitpack</item>+      <item>bitset</item>+      <item>bitshift</item>+      <item>bitunpack</item>+      <item>bitxor</item>+      <item>blackman</item>+      <item>blanks</item>+      <item>blkdiag</item>+      <item>blkmm</item>+      <item>bone</item>+      <item>box</item>+      <item>brighten</item>+      <item>bsxfun</item>+      <item>bug_report</item>+      <item>built_in_docstrings_file</item>+      <item>builtin</item>+      <item>bunzip2</item>+      <item>bzip2</item>+      <item>calendar</item>+      <item>camlight</item>+      <item>canonicalize_file_name</item>+      <item>cart2pol</item>+      <item>cart2sph</item>+      <item>cast</item>+      <item>cat</item>+      <item>cauchy_cdf</item>+      <item>cauchy_inv</item>+      <item>cauchy_pdf</item>+      <item>cauchy_rnd</item>+      <item>caxis</item>+      <item>cbrt</item>+      <item>ccolamd</item>+      <item>ceil</item>+      <item>cell</item>+      <item>cell2mat</item>+      <item>cell2struct</item>+      <item>celldisp</item>+      <item>cellfun</item>+      <item>cellindexmat</item>+      <item>cellslices</item>+      <item>cellstr</item>+      <item>center</item>+      <item>cgs</item>+      <item>char</item>+      <item>chdir</item>+      <item>chi2cdf</item>+      <item>chi2inv</item>+      <item>chi2pdf</item>+      <item>chi2rnd</item>+      <item>chisquare_test_homogeneity</item>+      <item>chisquare_test_independence</item>+      <item>chol</item>+      <item>chol2inv</item>+      <item>choldelete</item>+      <item>cholinsert</item>+      <item>cholinv</item>+      <item>cholshift</item>+      <item>cholupdate</item>+      <item>chop</item>+      <item>circshift</item>+      <item>citation</item>+      <item>cla</item>+      <item>clabel</item>+      <item>class</item>+      <item>clc</item>+      <item>clf</item>+      <item>clock</item>+      <item>cloglog</item>+      <item>close</item>+      <item>closereq</item>+      <item>cmpermute</item>+      <item>cmunique</item>+      <item>colamd</item>+      <item>colloc</item>+      <item>colon</item>+      <item>colorbar</item>+      <item>colorcube</item>+      <item>colormap</item>+      <item>colperm</item>+      <item>colstyle</item>+      <item>columns</item>+      <item>comet</item>+      <item>comet3</item>+      <item>comma</item>+      <item>command_line_path</item>+      <item>common_size</item>+      <item>commutation_matrix</item>+      <item>compan</item>+      <item>compare_versions</item>+      <item>compass</item>+      <item>completion_append_char</item>+      <item>completion_matches</item>+      <item>complex</item>+      <item>computer</item>+      <item>cond</item>+      <item>condeig</item>+      <item>condest</item>+      <item>confirm_recursive_rmdir</item>+      <item>conj</item>+      <item>contour</item>+      <item>contour3</item>+      <item>contourc</item>+      <item>contourf</item>+      <item>contrast</item>+      <item>conv</item>+      <item>conv2</item>+      <item>convhull</item>+      <item>convhulln</item>+      <item>convn</item>+      <item>cool</item>+      <item>copper</item>+      <item>copyfile</item>+      <item>copyobj</item>+      <item>cor_test</item>+      <item>corr</item>+      <item>corrcoef</item>+      <item>cos</item>+      <item>cosd</item>+      <item>cosh</item>+      <item>cot</item>+      <item>cotd</item>+      <item>coth</item>+      <item>cov</item>+      <item>cplxpair</item>+      <item>cputime</item>+      <item>crash_dumps_octave_core</item>+      <item>cross</item>+      <item>csc</item>+      <item>cscd</item>+      <item>csch</item>+      <item>cstrcat</item>+      <item>csvread</item>+      <item>csvwrite</item>+      <item>csymamd</item>+      <item>ctime</item>+      <item>ctranspose</item>+      <item>cubehelix</item>+      <item>cummax</item>+      <item>cummin</item>+      <item>cumprod</item>+      <item>cumsum</item>+      <item>cumtrapz</item>+      <item>curl</item>+      <item>cylinder</item>+      <item>daspect</item>+      <item>daspk</item>+      <item>daspk_options</item>+      <item>dasrt</item>+      <item>dasrt_options</item>+      <item>dassl</item>+      <item>dassl_options</item>+      <item>date</item>+      <item>datenum</item>+      <item>datestr</item>+      <item>datetick</item>+      <item>datevec</item>+      <item>dawson</item>+      <item>dblquad</item>+      <item>dbnext</item>+      <item>deal</item>+      <item>debian_missing_handler</item>+      <item>deblank</item>+      <item>debug</item>+      <item>debug_java</item>+      <item>debug_jit</item>+      <item>debug_on_error</item>+      <item>debug_on_interrupt</item>+      <item>debug_on_warning</item>+      <item>dec2base</item>+      <item>dec2bin</item>+      <item>dec2hex</item>+      <item>deconv</item>+      <item>deg2rad</item>+      <item>del2</item>+      <item>delaunay</item>+      <item>delaunay3</item>+      <item>delaunayn</item>+      <item>delete</item>+      <item>dellistener</item>+      <item>demo</item>+      <item>desktop</item>+      <item>det</item>+      <item>detrend</item>+      <item>diag</item>+      <item>dialog</item>+      <item>diff</item>+      <item>diffpara</item>+      <item>diffuse</item>+      <item>dir</item>+      <item>dir_in_loadpath</item>+      <item>disable_diagonal_matrix</item>+      <item>disable_permutation_matrix</item>+      <item>disable_range</item>+      <item>discrete_cdf</item>+      <item>discrete_inv</item>+      <item>discrete_pdf</item>+      <item>discrete_rnd</item>+      <item>disp</item>+      <item>display</item>+      <item>divergence</item>+      <item>dlmread</item>+      <item>dlmwrite</item>+      <item>dmperm</item>+      <item>do_braindead_shortcircuit_evaluation</item>+      <item>do_string_escapes</item>+      <item>doc</item>+      <item>doc_cache_create</item>+      <item>doc_cache_file</item>+      <item>dos</item>+      <item>dot</item>+      <item>double</item>+      <item>drawnow</item>+      <item>dsearch</item>+      <item>dsearchn</item>+      <item>dump_prefs</item>+      <item>dup2</item>+      <item>duplication_matrix</item>+      <item>durbinlevinson</item>+      <item>echo_executing_commands</item>+      <item>edit</item>+      <item>eig</item>+      <item>eigs</item>+      <item>ellipj</item>+      <item>ellipke</item>+      <item>ellipsoid</item>+      <item>empirical_cdf</item>+      <item>empirical_inv</item>+      <item>empirical_pdf</item>+      <item>empirical_rnd</item>+      <item>end</item>+      <item>endgrent</item>+      <item>endpwent</item>+      <item>eomday</item>+      <item>eq</item>+      <item>erf</item>+      <item>erfc</item>+      <item>erfcinv</item>+      <item>erfcx</item>+      <item>erfi</item>+      <item>erfinv</item>+      <item>errno</item>+      <item>errno_list</item>+      <item>error</item>+      <item>error_ids</item>+      <item>errorbar</item>+      <item>errordlg</item>+      <item>etime</item>+      <item>etree</item>+      <item>etreeplot</item>+      <item>eval</item>+      <item>evalc</item>+      <item>evalin</item>+      <item>example</item>+      <item>exec</item>+      <item>exist</item>+      <item>exp</item>+      <item>expcdf</item>+      <item>expint</item>+      <item>expinv</item>+      <item>expm</item>+      <item>expm1</item>+      <item>exppdf</item>+      <item>exprnd</item>+      <item>eye</item>+      <item>ezcontour</item>+      <item>ezcontourf</item>+      <item>ezmesh</item>+      <item>ezmeshc</item>+      <item>ezplot</item>+      <item>ezplot3</item>+      <item>ezpolar</item>+      <item>ezsurf</item>+      <item>ezsurfc</item>+      <item>f_test_regression</item>+      <item>fact</item>+      <item>factor</item>+      <item>factorial</item>+      <item>fail</item>+      <item>false</item>+      <item>fcdf</item>+      <item>fclear</item>+      <item>fclose</item>+      <item>fcntl</item>+      <item>fdisp</item>+      <item>feather</item>+      <item>feof</item>+      <item>ferror</item>+      <item>feval</item>+      <item>fflush</item>+      <item>fft</item>+      <item>fft2</item>+      <item>fftconv</item>+      <item>fftfilt</item>+      <item>fftn</item>+      <item>fftshift</item>+      <item>fftw</item>+      <item>fgetl</item>+      <item>fgets</item>+      <item>fieldnames</item>+      <item>figure</item>+      <item>file_in_loadpath</item>+      <item>file_in_path</item>+      <item>fileattrib</item>+      <item>filemarker</item>+      <item>fileparts</item>+      <item>fileread</item>+      <item>filesep</item>+      <item>fill</item>+      <item>filter</item>+      <item>filter2</item>+      <item>find</item>+      <item>find_dir_in_path</item>+      <item>findall</item>+      <item>findfigs</item>+      <item>findobj</item>+      <item>findstr</item>+      <item>finite</item>+      <item>finv</item>+      <item>fix</item>+      <item>fixed_point_format</item>+      <item>flag</item>+      <item>flintmax</item>+      <item>flip</item>+      <item>flipdim</item>+      <item>fliplr</item>+      <item>flipud</item>+      <item>floor</item>+      <item>fminbnd</item>+      <item>fminsearch</item>+      <item>fminunc</item>+      <item>fmod</item>+      <item>fnmatch</item>+      <item>fopen</item>+      <item>fork</item>+      <item>formula</item>+      <item>fpdf</item>+      <item>fplot</item>+      <item>fprintf</item>+      <item>fputs</item>+      <item>fractdiff</item>+      <item>frame2im</item>+      <item>fread</item>+      <item>freport</item>+      <item>freqz</item>+      <item>freqz_plot</item>+      <item>frewind</item>+      <item>frnd</item>+      <item>fscanf</item>+      <item>fseek</item>+      <item>fskipl</item>+      <item>fsolve</item>+      <item>ftell</item>+      <item>full</item>+      <item>fullfile</item>+      <item>func2str</item>+      <item>functions</item>+      <item>fwrite</item>+      <item>fzero</item>+      <item>gallery</item>+      <item>gamcdf</item>+      <item>gaminv</item>+      <item>gamma</item>+      <item>gammainc</item>+      <item>gammaln</item>+      <item>gampdf</item>+      <item>gamrnd</item>+      <item>gca</item>+      <item>gcbf</item>+      <item>gcbo</item>+      <item>gcd</item>+      <item>gcf</item>+      <item>gco</item>+      <item>ge</item>+      <item>genpath</item>+      <item>genvarname</item>+      <item>geocdf</item>+      <item>geoinv</item>+      <item>geopdf</item>+      <item>geornd</item>+      <item>get</item>+      <item>get_first_help_sentence</item>+      <item>get_help_text</item>+      <item>get_help_text_from_file</item>+      <item>get_home_directory</item>+      <item>getappdata</item>+      <item>getegid</item>+      <item>getenv</item>+      <item>geteuid</item>+      <item>getfield</item>+      <item>getgid</item>+      <item>getgrent</item>+      <item>getgrgid</item>+      <item>getgrnam</item>+      <item>gethostname</item>+      <item>getpgrp</item>+      <item>getpid</item>+      <item>getppid</item>+      <item>getpref</item>+      <item>getpwent</item>+      <item>getpwnam</item>+      <item>getpwuid</item>+      <item>getrusage</item>+      <item>getuid</item>+      <item>ginput</item>+      <item>givens</item>+      <item>glob</item>+      <item>glpk</item>+      <item>gls</item>+      <item>gmap40</item>+      <item>gmres</item>+      <item>gmtime</item>+      <item>gnuplot_binary</item>+      <item>gplot</item>+      <item>grabcode</item>+      <item>gradient</item>+      <item>graphics_toolkit</item>+      <item>gray</item>+      <item>gray2ind</item>+      <item>grid</item>+      <item>griddata</item>+      <item>griddata3</item>+      <item>griddatan</item>+      <item>gt</item>+      <item>gtext</item>+      <item>guidata</item>+      <item>guihandles</item>+      <item>gunzip</item>+      <item>gzip</item>+      <item>hadamard</item>+      <item>hamming</item>+      <item>hankel</item>+      <item>hanning</item>+      <item>hash</item>+      <item>have_window_system</item>+      <item>hdl2struct</item>+      <item>help</item>+      <item>helpdlg</item>+      <item>hess</item>+      <item>hex2dec</item>+      <item>hex2num</item>+      <item>hggroup</item>+      <item>hgload</item>+      <item>hgsave</item>+      <item>hidden</item>+      <item>hilb</item>+      <item>hist</item>+      <item>histc</item>+      <item>history_control</item>+      <item>history_file</item>+      <item>history_save</item>+      <item>history_size</item>+      <item>history_timestamp_format_string</item>+      <item>hold</item>+      <item>home</item>+      <item>horzcat</item>+      <item>hot</item>+      <item>hotelling_test</item>+      <item>hotelling_test_2</item>+      <item>housh</item>+      <item>hsv</item>+      <item>hsv2rgb</item>+      <item>hurst</item>+      <item>hygecdf</item>+      <item>hygeinv</item>+      <item>hygepdf</item>+      <item>hygernd</item>+      <item>hypot</item>+      <item>i</item>+      <item>ichol</item>+      <item>idivide</item>+      <item>ifelse</item>+      <item>ifft</item>+      <item>ifft2</item>+      <item>ifftn</item>+      <item>ifftshift</item>+      <item>ignore_function_time_stamp</item>+      <item>ilu</item>+      <item>im2double</item>+      <item>im2frame</item>+      <item>imag</item>+      <item>image</item>+      <item>imagesc</item>+      <item>imfinfo</item>+      <item>imformats</item>+      <item>importdata</item>+      <item>imread</item>+      <item>imshow</item>+      <item>imwrite</item>+      <item>ind2gray</item>+      <item>ind2rgb</item>+      <item>ind2sub</item>+      <item>index</item>+      <item>inf</item>+      <item>inferiorto</item>+      <item>info</item>+      <item>info_file</item>+      <item>info_program</item>+      <item>inline</item>+      <item>inpolygon</item>+      <item>input</item>+      <item>inputParser</item>+      <item>inputdlg</item>+      <item>inputname</item>+      <item>int16</item>+      <item>int2str</item>+      <item>int32</item>+      <item>int64</item>+      <item>int8</item>+      <item>interp1</item>+      <item>interp2</item>+      <item>interp3</item>+      <item>interpft</item>+      <item>interpn</item>+      <item>intersect</item>+      <item>intmax</item>+      <item>intmin</item>+      <item>inv</item>+      <item>inverse</item>+      <item>invhilb</item>+      <item>ipermute</item>+      <item>iqr</item>+      <item>is_absolute_filename</item>+      <item>is_dq_string</item>+      <item>is_function_handle</item>+      <item>is_leap_year</item>+      <item>is_rooted_relative_filename</item>+      <item>is_sq_string</item>+      <item>is_valid_file_id</item>+      <item>isa</item>+      <item>isalnum</item>+      <item>isalpha</item>+      <item>isappdata</item>+      <item>isargout</item>+      <item>isascii</item>+      <item>isaxes</item>+      <item>isbanded</item>+      <item>isbool</item>+      <item>iscell</item>+      <item>iscellstr</item>+      <item>ischar</item>+      <item>iscntrl</item>+      <item>iscolormap</item>+      <item>iscolumn</item>+      <item>iscomplex</item>+      <item>isdebugmode</item>+      <item>isdefinite</item>+      <item>isdeployed</item>+      <item>isdiag</item>+      <item>isdigit</item>+      <item>isdir</item>+      <item>isempty</item>+      <item>isequal</item>+      <item>isequaln</item>+      <item>isfield</item>+      <item>isfigure</item>+      <item>isfinite</item>+      <item>isfloat</item>+      <item>isglobal</item>+      <item>isgraph</item>+      <item>isguirunning</item>+      <item>ishandle</item>+      <item>ishermitian</item>+      <item>ishghandle</item>+      <item>ishold</item>+      <item>isieee</item>+      <item>isindex</item>+      <item>isinf</item>+      <item>isinteger</item>+      <item>isjava</item>+      <item>iskeyword</item>+      <item>isletter</item>+      <item>islogical</item>+      <item>islower</item>+      <item>ismac</item>+      <item>ismatrix</item>+      <item>ismember</item>+      <item>ismethod</item>+      <item>isna</item>+      <item>isnan</item>+      <item>isnull</item>+      <item>isnumeric</item>+      <item>isobject</item>+      <item>isocaps</item>+      <item>isocolors</item>+      <item>isonormals</item>+      <item>isosurface</item>+      <item>ispc</item>+      <item>ispref</item>+      <item>isprime</item>+      <item>isprint</item>+      <item>isprop</item>+      <item>ispunct</item>+      <item>isreal</item>+      <item>isrow</item>+      <item>isscalar</item>+      <item>issorted</item>+      <item>isspace</item>+      <item>issparse</item>+      <item>issquare</item>+      <item>isstr</item>+      <item>isstrprop</item>+      <item>isstruct</item>+      <item>isstudent</item>+      <item>issymmetric</item>+      <item>istril</item>+      <item>istriu</item>+      <item>isunix</item>+      <item>isupper</item>+      <item>isvarname</item>+      <item>isvector</item>+      <item>isxdigit</item>+      <item>j</item>+      <item>java2mat</item>+      <item>javaArray</item>+      <item>javaMethod</item>+      <item>javaObject</item>+      <item>java_get</item>+      <item>java_matrix_autoconversion</item>+      <item>java_set</item>+      <item>java_unsigned_autoconversion</item>+      <item>javaaddpath</item>+      <item>javachk</item>+      <item>javaclasspath</item>+      <item>javamem</item>+      <item>javarmpath</item>+      <item>jet</item>+      <item>jit_enable</item>+      <item>jit_failcnt</item>+      <item>jit_startcnt</item>+      <item>kbhit</item>+      <item>kendall</item>+      <item>keyboard</item>+      <item>keywords</item>+      <item>kill</item>+      <item>kolmogorov_smirnov_cdf</item>+      <item>kolmogorov_smirnov_test</item>+      <item>kolmogorov_smirnov_test_2</item>+      <item>kron</item>+      <item>kruskal_wallis_test</item>+      <item>krylov</item>+      <item>kurtosis</item>+      <item>laplace_cdf</item>+      <item>laplace_inv</item>+      <item>laplace_pdf</item>+      <item>laplace_rnd</item>+      <item>lasterr</item>+      <item>lasterror</item>+      <item>lastwarn</item>+      <item>lcm</item>+      <item>ldivide</item>+      <item>le</item>+      <item>legend</item>+      <item>legendre</item>+      <item>length</item>+      <item>lgamma</item>+      <item>license</item>+      <item>light</item>+      <item>lighting</item>+      <item>lin2mu</item>+      <item>line</item>+      <item>lines</item>+      <item>linkaxes</item>+      <item>linkprop</item>+      <item>linsolve</item>+      <item>linspace</item>+      <item>list_in_columns</item>+      <item>list_primes</item>+      <item>listdlg</item>+      <item>loadaudio</item>+      <item>loaded_graphics_toolkits</item>+      <item>loadobj</item>+      <item>localfunctions</item>+      <item>localtime</item>+      <item>log</item>+      <item>log10</item>+      <item>log1p</item>+      <item>log2</item>+      <item>logical</item>+      <item>logistic_cdf</item>+      <item>logistic_inv</item>+      <item>logistic_pdf</item>+      <item>logistic_regression</item>+      <item>logistic_rnd</item>+      <item>logit</item>+      <item>loglog</item>+      <item>loglogerr</item>+      <item>logm</item>+      <item>logncdf</item>+      <item>logninv</item>+      <item>lognpdf</item>+      <item>lognrnd</item>+      <item>logspace</item>+      <item>lookfor</item>+      <item>lookup</item>+      <item>lower</item>+      <item>ls</item>+      <item>ls_command</item>+      <item>lscov</item>+      <item>lsode</item>+      <item>lsode_options</item>+      <item>lsqnonneg</item>+      <item>lstat</item>+      <item>lt</item>+      <item>lu</item>+      <item>luinc</item>+      <item>luupdate</item>+      <item>magic</item>+      <item>mahalanobis</item>+      <item>make_absolute_filename</item>+      <item>makeinfo_program</item>+      <item>manova</item>+      <item>mat2cell</item>+      <item>mat2str</item>+      <item>material</item>+      <item>matlabroot</item>+      <item>matrix_type</item>+      <item>max</item>+      <item>max_recursion_depth</item>+      <item>mcnemar_test</item>+      <item>md5sum</item>+      <item>mean</item>+      <item>meansq</item>+      <item>median</item>+      <item>menu</item>+      <item>merge</item>+      <item>mesh</item>+      <item>meshc</item>+      <item>meshgrid</item>+      <item>meshz</item>+      <item>meta.class</item>+      <item>meta.dynproperty</item>+      <item>meta.event</item>+      <item>meta.method</item>+      <item>meta.package</item>+      <item>meta.property</item>+      <item>metaclass</item>+      <item>methods</item>+      <item>mex</item>+      <item>mexext</item>+      <item>mfilename</item>+      <item>mgorth</item>+      <item>min</item>+      <item>minus</item>+      <item>mislocked</item>+      <item>missing_component_hook</item>+      <item>missing_function_hook</item>+      <item>mkdir</item>+      <item>mkfifo</item>+      <item>mkoctfile</item>+      <item>mkpp</item>+      <item>mkstemp</item>+      <item>mktime</item>+      <item>mldivide</item>+      <item>mlock</item>+      <item>mod</item>+      <item>mode</item>+      <item>moment</item>+      <item>mouse_wheel_zoom</item>+      <item>movefile</item>+      <item>mpoles</item>+      <item>mpower</item>+      <item>mrdivide</item>+      <item>msgbox</item>+      <item>mtimes</item>+      <item>mu2lin</item>+      <item>munlock</item>+      <item>namelengthmax</item>+      <item>nan</item>+      <item>nargchk</item>+      <item>nargin</item>+      <item>narginchk</item>+      <item>nargout</item>+      <item>nargoutchk</item>+      <item>native_float_format</item>+      <item>nbincdf</item>+      <item>nbininv</item>+      <item>nbinpdf</item>+      <item>nbinrnd</item>+      <item>nchoosek</item>+      <item>ndgrid</item>+      <item>ndims</item>+      <item>ne</item>+      <item>newplot</item>+      <item>news</item>+      <item>nextpow2</item>+      <item>nfields</item>+      <item>nnz</item>+      <item>nonzeros</item>+      <item>norm</item>+      <item>normcdf</item>+      <item>normest</item>+      <item>normest1</item>+      <item>norminv</item>+      <item>normpdf</item>+      <item>normrnd</item>+      <item>not</item>+      <item>now</item>+      <item>nproc</item>+      <item>nth_element</item>+      <item>nthargout</item>+      <item>nthroot</item>+      <item>ntsc2rgb</item>+      <item>null</item>+      <item>num2cell</item>+      <item>num2hex</item>+      <item>num2str</item>+      <item>numel</item>+      <item>numfields</item>+      <item>nzmax</item>+      <item>ocean</item>+      <item>octave_config_info</item>+      <item>octave_core_file_limit</item>+      <item>octave_core_file_name</item>+      <item>octave_core_file_options</item>+      <item>octave_tmp_file_name</item>+      <item>ode23</item>+      <item>ode45</item>+      <item>odeget</item>+      <item>odeplot</item>+      <item>odeset</item>+      <item>ols</item>+      <item>onCleanup</item>+      <item>onenormest</item>+      <item>ones</item>+      <item>open</item>+      <item>optimget</item>+      <item>optimize_subsasgn_calls</item>+      <item>optimset</item>+      <item>or</item>+      <item>orderfields</item>+      <item>ordschur</item>+      <item>orient</item>+      <item>orth</item>+      <item>ostrsplit</item>+      <item>output_precision</item>+      <item>pack</item>+      <item>padecoef</item>+      <item>page_output_immediately</item>+      <item>page_screen_output</item>+      <item>pan</item>+      <item>paren</item>+      <item>pareto</item>+      <item>parseparams</item>+      <item>pascal</item>+      <item>patch</item>+      <item>path</item>+      <item>pathdef</item>+      <item>pathsep</item>+      <item>pause</item>+      <item>pbaspect</item>+      <item>pcg</item>+      <item>pchip</item>+      <item>pclose</item>+      <item>pcolor</item>+      <item>pcr</item>+      <item>peaks</item>+      <item>periodogram</item>+      <item>perl</item>+      <item>perms</item>+      <item>permute</item>+      <item>pie</item>+      <item>pie3</item>+      <item>pink</item>+      <item>pinv</item>+      <item>pipe</item>+      <item>pkg</item>+      <item>planerot</item>+      <item>playaudio</item>+      <item>plot</item>+      <item>plot3</item>+      <item>plotmatrix</item>+      <item>plotyy</item>+      <item>plus</item>+      <item>poisscdf</item>+      <item>poissinv</item>+      <item>poisspdf</item>+      <item>poissrnd</item>+      <item>pol2cart</item>+      <item>polar</item>+      <item>poly</item>+      <item>polyaffine</item>+      <item>polyarea</item>+      <item>polyder</item>+      <item>polyeig</item>+      <item>polyfit</item>+      <item>polygcd</item>+      <item>polyint</item>+      <item>polyout</item>+      <item>polyreduce</item>+      <item>polyval</item>+      <item>polyvalm</item>+      <item>popen</item>+      <item>popen2</item>+      <item>postpad</item>+      <item>pow2</item>+      <item>power</item>+      <item>powerset</item>+      <item>ppder</item>+      <item>ppint</item>+      <item>ppjumps</item>+      <item>ppplot</item>+      <item>ppval</item>+      <item>pqpnonneg</item>+      <item>prctile</item>+      <item>prefdir</item>+      <item>preferences</item>+      <item>prepad</item>+      <item>primes</item>+      <item>print</item>+      <item>print_empty_dimensions</item>+      <item>print_struct_array_contents</item>+      <item>print_usage</item>+      <item>printd</item>+      <item>printf</item>+      <item>prism</item>+      <item>probit</item>+      <item>prod</item>+      <item>profexplore</item>+      <item>profexport</item>+      <item>profile</item>+      <item>profshow</item>+      <item>program_invocation_name</item>+      <item>program_name</item>+      <item>prop_test_2</item>+      <item>psi</item>+      <item>publish</item>+      <item>putenv</item>+      <item>puts</item>+      <item>pwd</item>+      <item>python</item>+      <item>qmr</item>+      <item>qp</item>+      <item>qqplot</item>+      <item>qr</item>+      <item>qrdelete</item>+      <item>qrinsert</item>+      <item>qrshift</item>+      <item>qrupdate</item>+      <item>quad</item>+      <item>quad_options</item>+      <item>quadcc</item>+      <item>quadgk</item>+      <item>quadl</item>+      <item>quadv</item>+      <item>quantile</item>+      <item>questdlg</item>+      <item>quit</item>+      <item>quiver</item>+      <item>quiver3</item>+      <item>qz</item>+      <item>qzhess</item>+      <item>rad2deg</item>+      <item>rainbow</item>+      <item>rand</item>+      <item>rande</item>+      <item>randg</item>+      <item>randi</item>+      <item>randn</item>+      <item>randp</item>+      <item>randperm</item>+      <item>range</item>+      <item>rank</item>+      <item>ranks</item>+      <item>rat</item>+      <item>rats</item>+      <item>rcond</item>+      <item>rdivide</item>+      <item>readdir</item>+      <item>readline_re_read_init_file</item>+      <item>readline_read_init_file</item>+      <item>real</item>+      <item>reallog</item>+      <item>realpow</item>+      <item>realsqrt</item>+      <item>record</item>+      <item>rectangle</item>+      <item>rectint</item>+      <item>recycle</item>+      <item>reducepatch</item>+      <item>reducevolume</item>+      <item>refresh</item>+      <item>refreshdata</item>+      <item>regexp</item>+      <item>regexpi</item>+      <item>regexprep</item>+      <item>regexptranslate</item>+      <item>register_graphics_toolkit</item>+      <item>rehash</item>+      <item>rem</item>+      <item>remove_input_event_hook</item>+      <item>repelems</item>+      <item>repmat</item>+      <item>reset</item>+      <item>reshape</item>+      <item>residue</item>+      <item>resize</item>+      <item>restoredefaultpath</item>+      <item>rethrow</item>+      <item>rgb2hsv</item>+      <item>rgb2ind</item>+      <item>rgb2ntsc</item>+      <item>rgbplot</item>+      <item>ribbon</item>+      <item>rindex</item>+      <item>rmappdata</item>+      <item>rmfield</item>+      <item>rmpath</item>+      <item>rmpref</item>+      <item>roots</item>+      <item>rose</item>+      <item>rosser</item>+      <item>rot90</item>+      <item>rotate</item>+      <item>rotate3d</item>+      <item>rotdim</item>+      <item>round</item>+      <item>roundb</item>+      <item>rows</item>+      <item>rref</item>+      <item>rsf2csf</item>+      <item>run</item>+      <item>run_count</item>+      <item>run_test</item>+      <item>rundemos</item>+      <item>runlength</item>+      <item>runtests</item>+      <item>save_default_options</item>+      <item>save_header_format_string</item>+      <item>save_precision</item>+      <item>saveas</item>+      <item>saveaudio</item>+      <item>saveobj</item>+      <item>savepath</item>+      <item>scanf</item>+      <item>scatter</item>+      <item>scatter3</item>+      <item>schur</item>+      <item>sec</item>+      <item>secd</item>+      <item>sech</item>+      <item>semicolon</item>+      <item>semilogx</item>+      <item>semilogxerr</item>+      <item>semilogy</item>+      <item>semilogyerr</item>+      <item>set</item>+      <item>setappdata</item>+      <item>setaudio</item>+      <item>setdiff</item>+      <item>setenv</item>+      <item>setfield</item>+      <item>setgrent</item>+      <item>setpref</item>+      <item>setpwent</item>+      <item>setxor</item>+      <item>shading</item>+      <item>shg</item>+      <item>shift</item>+      <item>shiftdim</item>+      <item>shrinkfaces</item>+      <item>sighup_dumps_octave_core</item>+      <item>sign</item>+      <item>sign_test</item>+      <item>signbit</item>+      <item>sigterm_dumps_octave_core</item>+      <item>silent_functions</item>+      <item>sin</item>+      <item>sinc</item>+      <item>sind</item>+      <item>sinetone</item>+      <item>sinewave</item>+      <item>single</item>+      <item>sinh</item>+      <item>size</item>+      <item>size_equal</item>+      <item>sizemax</item>+      <item>sizeof</item>+      <item>skewness</item>+      <item>sleep</item>+      <item>slice</item>+      <item>smooth3</item>+      <item>sombrero</item>+      <item>sort</item>+      <item>sortrows</item>+      <item>sound</item>+      <item>soundsc</item>+      <item>source</item>+      <item>spalloc</item>+      <item>sparse</item>+      <item>sparse_auto_mutate</item>+      <item>spaugment</item>+      <item>spconvert</item>+      <item>spdiags</item>+      <item>spearman</item>+      <item>spectral_adf</item>+      <item>spectral_xdf</item>+      <item>specular</item>+      <item>speed</item>+      <item>spencer</item>+      <item>speye</item>+      <item>spfun</item>+      <item>sph2cart</item>+      <item>sphere</item>+      <item>spinmap</item>+      <item>spline</item>+      <item>splinefit</item>+      <item>split_long_rows</item>+      <item>spones</item>+      <item>spparms</item>+      <item>sprand</item>+      <item>sprandn</item>+      <item>sprandsym</item>+      <item>sprank</item>+      <item>spring</item>+      <item>sprintf</item>+      <item>spstats</item>+      <item>spy</item>+      <item>sqp</item>+      <item>sqrt</item>+      <item>sqrtm</item>+      <item>squeeze</item>+      <item>sscanf</item>+      <item>stairs</item>+      <item>stat</item>+      <item>statistics</item>+      <item>std</item>+      <item>stderr</item>+      <item>stdin</item>+      <item>stdnormal_cdf</item>+      <item>stdnormal_inv</item>+      <item>stdnormal_pdf</item>+      <item>stdnormal_rnd</item>+      <item>stdout</item>+      <item>stem</item>+      <item>stem3</item>+      <item>stemleaf</item>+      <item>stft</item>+      <item>str2double</item>+      <item>str2func</item>+      <item>str2num</item>+      <item>strcat</item>+      <item>strchr</item>+      <item>strcmp</item>+      <item>strcmpi</item>+      <item>strfind</item>+      <item>strftime</item>+      <item>string_fill_char</item>+      <item>strjoin</item>+      <item>strjust</item>+      <item>strmatch</item>+      <item>strncmp</item>+      <item>strncmpi</item>+      <item>strptime</item>+      <item>strread</item>+      <item>strrep</item>+      <item>strsplit</item>+      <item>strtok</item>+      <item>strtrim</item>+      <item>strtrunc</item>+      <item>struct</item>+      <item>struct2cell</item>+      <item>struct2hdl</item>+      <item>struct_levels_to_print</item>+      <item>structfun</item>+      <item>strvcat</item>+      <item>sub2ind</item>+      <item>subplot</item>+      <item>subsasgn</item>+      <item>subsindex</item>+      <item>subspace</item>+      <item>subsref</item>+      <item>substr</item>+      <item>substruct</item>+      <item>sum</item>+      <item>summer</item>+      <item>sumsq</item>+      <item>superiorto</item>+      <item>suppress_verbose_help_message</item>+      <item>surf</item>+      <item>surface</item>+      <item>surfc</item>+      <item>surfl</item>+      <item>surfnorm</item>+      <item>svd</item>+      <item>svd_driver</item>+      <item>svds</item>+      <item>swapbytes</item>+      <item>syl</item>+      <item>sylvester</item>+      <item>symamd</item>+      <item>symbfact</item>+      <item>symrcm</item>+      <item>symvar</item>+      <item>synthesis</item>+      <item>system</item>+      <item>t_test</item>+      <item>t_test_2</item>+      <item>t_test_regression</item>+      <item>table</item>+      <item>tan</item>+      <item>tand</item>+      <item>tanh</item>+      <item>tar</item>+      <item>tcdf</item>+      <item>tempdir</item>+      <item>tempname</item>+      <item>terminal_size</item>+      <item>test</item>+      <item>tetramesh</item>+      <item>texi_macros_file</item>+      <item>text</item>+      <item>textread</item>+      <item>textscan</item>+      <item>tic</item>+      <item>tilde_expand</item>+      <item>time</item>+      <item>times</item>+      <item>tinv</item>+      <item>title</item>+      <item>tmpfile</item>+      <item>tmpnam</item>+      <item>toascii</item>+      <item>toc</item>+      <item>toeplitz</item>+      <item>tolower</item>+      <item>toupper</item>+      <item>tpdf</item>+      <item>trace</item>+      <item>transpose</item>+      <item>trapz</item>+      <item>treelayout</item>+      <item>treeplot</item>+      <item>tril</item>+      <item>trimesh</item>+      <item>triplequad</item>+      <item>triplot</item>+      <item>trisurf</item>+      <item>triu</item>+      <item>trnd</item>+      <item>true</item>+      <item>tsearch</item>+      <item>tsearchn</item>+      <item>type</item>+      <item>typecast</item>+      <item>typeinfo</item>+      <item>u_test</item>+      <item>uibuttongroup</item>+      <item>uicontextmenu</item>+      <item>uicontrol</item>+      <item>uigetdir</item>+      <item>uigetfile</item>+      <item>uimenu</item>+      <item>uint16</item>+      <item>uint32</item>+      <item>uint64</item>+      <item>uint8</item>+      <item>uipanel</item>+      <item>uipushtool</item>+      <item>uiputfile</item>+      <item>uiresume</item>+      <item>uitoggletool</item>+      <item>uitoolbar</item>+      <item>uiwait</item>+      <item>umask</item>+      <item>uminus</item>+      <item>uname</item>+      <item>undo_string_escapes</item>+      <item>unidcdf</item>+      <item>unidinv</item>+      <item>unidpdf</item>+      <item>unidrnd</item>+      <item>unifcdf</item>+      <item>unifinv</item>+      <item>unifpdf</item>+      <item>unifrnd</item>+      <item>union</item>+      <item>unique</item>+      <item>unix</item>+      <item>unlink</item>+      <item>unmkpp</item>+      <item>unpack</item>+      <item>unsetenv</item>+      <item>untabify</item>+      <item>untar</item>+      <item>unwrap</item>+      <item>unzip</item>+      <item>uplus</item>+      <item>upper</item>+      <item>urlread</item>+      <item>urlwrite</item>+      <item>usage</item>+      <item>usejava</item>+      <item>usleep</item>+      <item>validateattributes</item>+      <item>validatestring</item>+      <item>vander</item>+      <item>var</item>+      <item>var_test</item>+      <item>vec</item>+      <item>vech</item>+      <item>vectorize</item>+      <item>ver</item>+      <item>version</item>+      <item>vertcat</item>+      <item>view</item>+      <item>viridis</item>+      <item>voronoi</item>+      <item>voronoin</item>+      <item>waitbar</item>+      <item>waitfor</item>+      <item>waitforbuttonpress</item>+      <item>waitpid</item>+      <item>warndlg</item>+      <item>warning</item>+      <item>warning_ids</item>+      <item>warranty</item>+      <item>waterfall</item>+      <item>wavread</item>+      <item>wavwrite</item>+      <item>wblcdf</item>+      <item>wblinv</item>+      <item>wblpdf</item>+      <item>wblrnd</item>+      <item>weekday</item>+      <item>welch_test</item>+      <item>what</item>+      <item>which</item>+      <item>white</item>+      <item>whitebg</item>+      <item>whos_line_format</item>+      <item>wienrnd</item>+      <item>wilcoxon_test</item>+      <item>wilkinson</item>+      <item>winter</item>+      <item>xlabel</item>+      <item>xlim</item>+      <item>xor</item>+      <item>yes_or_no</item>+      <item>ylabel</item>+      <item>ylim</item>+      <item>yulewalker</item>+      <item>z_test</item>+      <item>z_test_2</item>+      <item>zeros</item>+      <item>zip</item>+      <item>zlabel</item>+      <item>zlim</item>+      <item>zoom</item>+      <item>zscore</item>+    </list>+    +    <list name="forge">+      <item>airy_Ai</item>+      <item>airy_Ai_deriv</item>+      <item>airy_Ai_deriv_scaled</item>+      <item>airy_Ai_scaled</item>+      <item>airy_Bi</item>+      <item>airy_Bi_deriv</item>+      <item>airy_Bi_deriv_scaled</item>+      <item>airy_Bi_scaled</item>+      <item>airy_zero_Ai</item>+      <item>airy_zero_Ai_deriv</item>+      <item>airy_zero_Bi</item>+      <item>airy_zero_Bi_deriv</item>+      <item>atanint</item>+      <item>bchdeco</item>+      <item>bchenco</item>+      <item>bessel_il_scaled</item>+      <item>bessel_In</item>+      <item>bessel_In_scaled</item>+      <item>bessel_Inu</item>+      <item>bessel_Inu_scaled</item>+      <item>bessel_jl</item>+      <item>bessel_Jn</item>+      <item>bessel_Jnu</item>+      <item>bessel_kl_scaled</item>+      <item>bessel_Kn</item>+      <item>bessel_Kn_scaled</item>+      <item>bessel_Knu</item>+      <item>bessel_Knu_scaled</item>+      <item>bessel_lnKnu</item>+      <item>bessel_yl</item>+      <item>bessel_Yn</item>+      <item>bessel_Ynu</item>+      <item>bessel_zero_J0</item>+      <item>bessel_zero_J1</item>+      <item>beta_gsl</item>+      <item>bfgsmin</item>+      <item>bisectionstep</item>+      <item>builtin</item>+      <item>bwfill</item>+      <item>bwlabel</item>+      <item>cell2csv</item>+      <item>celleval</item>+      <item>Chi</item>+      <item>chol</item>+      <item>Ci</item>+      <item>clausen</item>+      <item>conicalP_0</item>+      <item>conicalP_1</item>+      <item>conicalP_half</item>+      <item>conicalP_mhalf</item>+      <item>conv2</item>+      <item>cordflt2</item>+      <item>coupling_3j</item>+      <item>coupling_6j</item>+      <item>coupling_9j</item>+      <item>csv2cell</item>+      <item>csvconcat</item>+      <item>csvexplode</item>+      <item>cyclgen</item>+      <item>cyclpoly</item>+      <item>dawson</item>+      <item>debye_1</item>+      <item>debye_2</item>+      <item>debye_3</item>+      <item>debye_4</item>+      <item>deref</item>+      <item>dispatch</item>+      <item>dispatch_help</item>+      <item>display_fixed_operations</item>+      <item>dlmread</item>+      <item>ellint_Ecomp</item>+      <item>ellint_Kcomp</item>+      <item>ellipj</item>+      <item>erfc_gsl</item>+      <item>erf_gsl</item>+      <item>erf_Q</item>+      <item>erf_Z</item>+      <item>_errcore</item>+      <item>eta</item>+      <item>eta_int</item>+      <item>expint_3</item>+      <item>expint_E1</item>+      <item>expint_E2</item>+      <item>expint_Ei</item>+      <item>expm1</item>+      <item>exp_mult</item>+      <item>exprel</item>+      <item>exprel_2</item>+      <item>exprel_n</item>+      <item>fabs</item>+      <item>fangle</item>+      <item>farg</item>+      <item>fatan2</item>+      <item>fceil</item>+      <item>fconj</item>+      <item>fcos</item>+      <item>fcosh</item>+      <item>fcumprod</item>+      <item>fcumsum</item>+      <item>fdiag</item>+      <item>fermi_dirac_3half</item>+      <item>fermi_dirac_half</item>+      <item>fermi_dirac_inc_0</item>+      <item>fermi_dirac_int</item>+      <item>fermi_dirac_mhalf</item>+      <item>fexp</item>+      <item>ffloor</item>+      <item>fimag</item>+      <item>finitedifference</item>+      <item>fixed</item>+      <item>flog</item>+      <item>flog10</item>+      <item>fprod</item>+      <item>freal</item>+      <item>freshape</item>+      <item>fround</item>+      <item>fsin</item>+      <item>fsinh</item>+      <item>fsqrt</item>+      <item>fsum</item>+      <item>fsumsq</item>+      <item>ftan</item>+      <item>ftanh</item>+      <item>full</item>+      <item>gamma_gsl</item>+      <item>gamma_inc</item>+      <item>gamma_inc_P</item>+      <item>gamma_inc_Q</item>+      <item>gammainv_gsl</item>+      <item>gammastar</item>+      <item>gdet</item>+      <item>gdiag</item>+      <item>gexp</item>+      <item>gf</item>+      <item>gfilter</item>+      <item>_gfweight</item>+      <item>ginv</item>+      <item>ginverse</item>+      <item>glog</item>+      <item>glu</item>+      <item>gpick</item>+      <item>gprod</item>+      <item>grab</item>+      <item>grank</item>+      <item>graycomatrix</item>+      <item>__grcla__</item>+      <item>__grclf__</item>+      <item>__grcmd__</item>+      <item>greshape</item>+      <item>__grexit__</item>+      <item>__grfigure__</item>+      <item>__grgetstat__</item>+      <item>__grhold__</item>+      <item>__grinit__</item>+      <item>__grishold__</item>+      <item>__grnewset__</item>+      <item>__grsetgraph__</item>+      <item>gsl_sf</item>+      <item>gsqrt</item>+      <item>gsum</item>+      <item>gsumsq</item>+      <item>gtext</item>+      <item>gzoom</item>+      <item>hazard</item>+      <item>houghtf</item>+      <item>hyperg_0F1</item>+      <item>hzeta</item>+      <item>is_complex_sparse</item>+      <item>isfixed</item>+      <item>isgalois</item>+      <item>isprimitive</item>+      <item>is_real_sparse</item>+      <item>is_sparse</item>+      <item>jpgread</item>+      <item>jpgwrite</item>+      <item>lambert_W0</item>+      <item>lambert_Wm1</item>+      <item>legendre_Pl</item>+      <item>legendre_Plm</item>+      <item>legendre_Ql</item>+      <item>legendre_sphPlm</item>+      <item>legendre_sphPlm_array</item>+      <item>leval</item>+      <item>listen</item>+      <item>lnbeta</item>+      <item>lncosh</item>+      <item>lngamma_gsl</item>+      <item>lnpoch</item>+      <item>lnsinh</item>+      <item>log_1plusx</item>+      <item>log_1plusx_mx</item>+      <item>log_erfc</item>+      <item>lp</item>+      <item>make_sparse</item>+      <item>mark_for_deletion</item>+      <item>medfilt1</item>+      <item>newtonstep</item>+      <item>nnz</item>+      <item>numgradient</item>+      <item>numhessian</item>+      <item>pchip_deriv</item>+      <item>pngread</item>+      <item>pngwrite</item>+      <item>poch</item>+      <item>pochrel</item>+      <item>pretty</item>+      <item>primpoly</item>+      <item>psi</item>+      <item>psi_1_int</item>+      <item>psi_1piy</item>+      <item>psi_n</item>+      <item>rand</item>+      <item>rande</item>+      <item>randn</item>+      <item>randp</item>+      <item>regexp</item>+      <item>remez</item>+      <item>reset_fixed_operations</item>+      <item>rotate_scale</item>+      <item>rsdec</item>+      <item>rsenc</item>+      <item>samin</item>+      <item>SBBacksub</item>+      <item>SBEig</item>+      <item>SBFactor</item>+      <item>SBProd</item>+      <item>SBSolve</item>+      <item>Shi</item>+      <item>Si</item>+      <item>sinc_gsl</item>+      <item>spabs</item>+      <item>sparse</item>+      <item>spfind</item>+      <item>spimag</item>+      <item>spinv</item>+      <item>splu</item>+      <item>spreal</item>+      <item>SymBand</item>+      <item>synchrotron_1</item>+      <item>synchrotron_2</item>+      <item>syndtable</item>+      <item>taylorcoeff</item>+      <item>transport_2</item>+      <item>transport_3</item>+      <item>transport_4</item>+      <item>transport_5</item>+      <item>trisolve</item>+      <item>waitbar</item>+      <item>xmlread</item>+      <item>zeta</item>+      <item>zeta_int</item>+      <item>aar</item>+      <item>aarmam</item>+      <item>ac2poly</item>+      <item>ac2rc</item>+      <item>acorf</item>+      <item>acovf</item>+      <item>addpath</item>+      <item>ademodce</item>+      <item>adim</item>+      <item>adsmax</item>+      <item>amodce</item>+      <item>anderson_darling_cdf</item>+      <item>anderson_darling_test</item>+      <item>anovan</item>+      <item>apkconst</item>+      <item>append_save</item>+      <item>applylut</item>+      <item>ar2poly</item>+      <item>ar2rc</item>+      <item>arburg</item>+      <item>arcext</item>+      <item>arfit2</item>+      <item>ar_spa</item>+      <item>aryule</item>+      <item>assert</item>+      <item>au</item>+      <item>aucapture</item>+      <item>auload</item>+      <item>auplot</item>+      <item>aurecord</item>+      <item>ausave</item>+      <item>autumn</item>+      <item>average_moments</item>+      <item>awgn</item>+      <item>azimuth</item>+      <item>BandToFull</item>+      <item>BandToSparse</item>+      <item>base64encode</item>+      <item>battery</item>+      <item>bchpoly</item>+      <item>bestblk</item>+      <item>best_dir</item>+      <item>best_dir_cov</item>+      <item>betaln</item>+      <item>bfgs</item>+      <item>bfgsmin_example</item>+      <item>bi2de</item>+      <item>biacovf</item>+      <item>bilinear</item>+      <item>bisdemo</item>+      <item>bispec</item>+      <item>biterr</item>+      <item>blkdiag</item>+      <item>blkproc</item>+      <item>bmpwrite</item>+      <item>bone</item>+      <item>bound_convex</item>+      <item>boxcar</item>+      <item>boxplot</item>+      <item>brighten</item>+      <item>bs_gradient</item>+      <item>butter</item>+      <item>buttord</item>+      <item>bwborder</item>+      <item>bweuler</item>+      <item>bwlabel</item>+      <item>bwmorph</item>+      <item>bwselect</item>+      <item>calendar</item>+      <item>cceps</item>+      <item>cdiff</item>+      <item>cellstr</item>+      <item>char</item>+      <item>cheb</item>+      <item>cheb1ord</item>+      <item>cheb2ord</item>+      <item>chebwin</item>+      <item>cheby1</item>+      <item>cheby2</item>+      <item>chirp</item>+      <item>clf</item>+      <item>clip</item>+      <item>cmpermute</item>+      <item>cmunique</item>+      <item>cohere</item>+      <item>col2im</item>+      <item>colfilt</item>+      <item>colorgradient</item>+      <item>comms</item>+      <item>compand</item>+      <item>complex</item>+      <item>concat</item>+      <item>conndef</item>+      <item>content</item>+      <item>contents</item>+      <item>Contents</item>+      <item>contourf</item>+      <item>convhull</item>+      <item>convmtx</item>+      <item>cool</item>+      <item>copper</item>+      <item>corr2</item>+      <item>cosets</item>+      <item>count</item>+      <item>covm</item>+      <item>cplxpair</item>+      <item>cquadnd</item>+      <item>create_lookup_table</item>+      <item>crule</item>+      <item>crule2d</item>+      <item>crule2dgen</item>+      <item>csape</item>+      <item>csapi</item>+      <item>csd</item>+      <item>csvread</item>+      <item>csvwrite</item>+      <item>ctranspose</item>+      <item>cumtrapz</item>+      <item>czt</item>+      <item>d2_min</item>+      <item>datenum</item>+      <item>datestr</item>+      <item>datevec</item>+      <item>dct</item>+      <item>dct2</item>+      <item>dctmtx</item>+      <item>de2bi</item>+      <item>deal</item>+      <item>decimate</item>+      <item>decode</item>+      <item>deg2rad</item>+      <item>del2</item>+      <item>delaunay</item>+      <item>delaunay3</item>+      <item>delta_method</item>+      <item>demo</item>+      <item>demodmap</item>+      <item>deriv</item>+      <item>detrend</item>+      <item>dfdp</item>+      <item>dftmtx</item>+      <item>dhbar</item>+      <item>dilate</item>+      <item>dispatch</item>+      <item>distance</item>+      <item>dlmread</item>+      <item>dlmwrite</item>+      <item>dos</item>+      <item>double</item>+      <item>drawnow</item>+      <item>durlev</item>+      <item>dxfwrite</item>+      <item>edge</item>+      <item>edit</item>+      <item>ellip</item>+      <item>ellipdemo</item>+      <item>ellipj</item>+      <item>ellipke</item>+      <item>ellipord</item>+      <item>__ellip_ws</item>+      <item>__ellip_ws_min</item>+      <item>encode</item>+      <item>eomday</item>+      <item>erode</item>+      <item>example</item>+      <item>ExampleEigenValues</item>+      <item>ExampleGenEigenValues</item>+      <item>expdemo</item>+      <item>expfit</item>+      <item>eyediagram</item>+      <item>factor</item>+      <item>factorial</item>+      <item>fail</item>+      <item>fcnchk</item>+      <item>feedback</item>+      <item>fem_test</item>+      <item>ff2n</item>+      <item>fftconv2</item>+      <item>fieldnames</item>+      <item>fill</item>+      <item>fill3</item>+      <item>filter2</item>+      <item>filtfilt</item>+      <item>filtic</item>+      <item>findsym</item>+      <item>fir1</item>+      <item>fir2</item>+      <item>fixedpoint</item>+      <item>flag</item>+      <item>flag_implicit_samplerate</item>+      <item>flattopwin</item>+      <item>flix</item>+      <item>float</item>+      <item>fmin</item>+      <item>fminbnd</item>+      <item>fmins</item>+      <item>fminunc</item>+      <item>fnder</item>+      <item>fnplt</item>+      <item>fnval</item>+      <item>fplot</item>+      <item>freqs</item>+      <item>freqs_plot</item>+      <item>fsort</item>+      <item>fullfact</item>+      <item>FullToBand</item>+      <item>funm</item>+      <item>fzero</item>+      <item>gammaln</item>+      <item>gapTest</item>+      <item>gaussian</item>+      <item>gausswin</item>+      <item>gconv</item>+      <item>gconvmtx</item>+      <item>gdeconv</item>+      <item>gdftmtx</item>+      <item>gen2par</item>+      <item>geomean</item>+      <item>getfield</item>+      <item>getfields</item>+      <item>gfft</item>+      <item>gftable</item>+      <item>gfweight</item>+      <item>gget</item>+      <item>gifft</item>+      <item>ginput</item>+      <item>gmm_estimate</item>+      <item>gmm_example</item>+      <item>gmm_obj</item>+      <item>gmm_results</item>+      <item>gmm_variance</item>+      <item>gmm_variance_inefficient</item>+      <item>gquad</item>+      <item>gquad2d</item>+      <item>gquad2d6</item>+      <item>gquad2dgen</item>+      <item>gquad6</item>+      <item>gquadnd</item>+      <item>grace_octave_path</item>+      <item>gradient</item>+      <item>grayslice</item>+      <item>grep</item>+      <item>grid</item>+      <item>griddata</item>+      <item>groots</item>+      <item>grpdelay</item>+      <item>grule</item>+      <item>grule2d</item>+      <item>grule2dgen</item>+      <item>hadamard</item>+      <item>hammgen</item>+      <item>hankel</item>+      <item>hann</item>+      <item>harmmean</item>+      <item>hilbert</item>+      <item>histeq</item>+      <item>histfit</item>+      <item>histo</item>+      <item>histo2</item>+      <item>histo3</item>+      <item>histo4</item>+      <item>hot</item>+      <item>hsv</item>+      <item>hup</item>+      <item>idct</item>+      <item>idct2</item>+      <item>idplot</item>+      <item>idsim</item>+      <item>ifftshift</item>+      <item>im2bw</item>+      <item>im2col</item>+      <item>imadjust</item>+      <item>imginfo</item>+      <item>imhist</item>+      <item>imnoise</item>+      <item>impad</item>+      <item>impz</item>+      <item>imread</item>+      <item>imrotate</item>+      <item>imshear</item>+      <item>imtranslate</item>+      <item>imwrite</item>+      <item>innerfun</item>+      <item>inputname</item>+      <item>interp</item>+      <item>interp1</item>+      <item>interp2</item>+      <item>interpft</item>+      <item>intersect</item>+      <item>invest0</item>+      <item>invest1</item>+      <item>invfdemo</item>+      <item>invfreq</item>+      <item>invfreqs</item>+      <item>invfreqz</item>+      <item>inz</item>+      <item>irsa_act</item>+      <item>irsa_actcore</item>+      <item>irsa_check</item>+      <item>irsa_dft</item>+      <item>irsa_dftfp</item>+      <item>irsa_genreal</item>+      <item>irsa_idft</item>+      <item>irsa_isregular</item>+      <item>irsa_jitsp</item>+      <item>irsa_mdsp</item>+      <item>irsa_normalize</item>+      <item>irsa_plotdft</item>+      <item>irsa_resample</item>+      <item>irsa_rgenreal</item>+      <item>isa</item>+      <item>isbw</item>+      <item>isdir</item>+      <item>isequal</item>+      <item>isfield</item>+      <item>isgray</item>+      <item>isind</item>+      <item>ismember</item>+      <item>isprime</item>+      <item>isrgb</item>+      <item>issparse</item>+      <item>isunix</item>+      <item>jet</item>+      <item>kaiser</item>+      <item>kaiserord</item>+      <item>lambertw</item>+      <item>lattice</item>+      <item>lauchli</item>+      <item>leasqr</item>+      <item>leasqrdemo</item>+      <item>legend</item>+      <item>legendre</item>+      <item>levinson</item>+      <item>lin2mu</item>+      <item>line_min</item>+      <item>lloyds</item>+      <item>lookup</item>+      <item>lookup_table</item>+      <item>lpc</item>+      <item>lp_test</item>+      <item>mad</item>+      <item>magic</item>+      <item>makelut</item>+      <item>MakeShears</item>+      <item>map</item>+      <item>mat2gray</item>+      <item>mat2str</item>+      <item>mdsmax</item>+      <item>mean2</item>+      <item>medfilt2</item>+      <item>meshc</item>+      <item>minimize</item>+      <item>minpol</item>+      <item>mkpp</item>+      <item>mktheta</item>+      <item>mle_estimate</item>+      <item>mle_example</item>+      <item>mle_obj</item>+      <item>mle_results</item>+      <item>mle_variance</item>+      <item>modmap</item>+      <item>mu2lin</item>+      <item>mvaar</item>+      <item>mvar</item>+      <item>mvfilter</item>+      <item>mvfreqz</item>+      <item>myfeval</item>+      <item>nanmax</item>+      <item>nanmean</item>+      <item>nanmedian</item>+      <item>nanmin</item>+      <item>nanstd</item>+      <item>nansum</item>+      <item>ncauer</item>+      <item>nchoosek</item>+      <item>ncrule</item>+      <item>ndims</item>+      <item>nelder_mead_min</item>+      <item>newmark</item>+      <item>nlfilter</item>+      <item>nlnewmark</item>+      <item>__nlnewmark_fcn__</item>+      <item>nmsmax</item>+      <item>nonzeros</item>+      <item>normplot</item>+      <item>now</item>+      <item>nrm</item>+      <item>nthroot</item>+      <item>nze</item>+      <item>OCTAVE_FORGE_VERSION</item>+      <item>ode23</item>+      <item>ode45</item>+      <item>ode78</item>+      <item>optimset</item>+      <item>ordfilt2</item>+      <item>orient</item>+      <item>pacf</item>+      <item>padarray</item>+      <item>parameterize</item>+      <item>parcor</item>+      <item>pareto</item>+      <item>pascal</item>+      <item>patch</item>+      <item>pburg</item>+      <item>pcg</item>+      <item>pchip</item>+      <item>pcolor</item>+      <item>pcr</item>+      <item>peaks</item>+      <item>penddot</item>+      <item>pendulum</item>+      <item>perms</item>+      <item>pie</item>+      <item>pink</item>+      <item>plot3</item>+      <item>__plt3__</item>+      <item>poly2ac</item>+      <item>poly2ar</item>+      <item>poly_2_ex</item>+      <item>poly2mask</item>+      <item>poly2rc</item>+      <item>poly2sym</item>+      <item>poly2th</item>+      <item>polyarea</item>+      <item>polyconf</item>+      <item>polyder</item>+      <item>polyderiv</item>+      <item>polygcd</item>+      <item>polystab</item>+      <item>__power</item>+      <item>ppval</item>+      <item>prctile</item>+      <item>prettyprint</item>+      <item>prettyprint_c</item>+      <item>primes</item>+      <item>princomp</item>+      <item>print</item>+      <item>prism</item>+      <item>proplan</item>+      <item>pulstran</item>+      <item>pwelch</item>+      <item>pyulear</item>+      <item>qaskdeco</item>+      <item>qaskenco</item>+      <item>qtdecomp</item>+      <item>qtgetblk</item>+      <item>qtsetblk</item>+      <item>quad2dc</item>+      <item>quad2dcgen</item>+      <item>quad2dg</item>+      <item>quad2dggen</item>+      <item>quadc</item>+      <item>quadg</item>+      <item>quadl</item>+      <item>quadndg</item>+      <item>quantiz</item>+      <item>quiver</item>+      <item>rad2deg</item>+      <item>rainbow</item>+      <item>randerr</item>+      <item>randint</item>+      <item>randsrc</item>+      <item>rat</item>+      <item>rats</item>+      <item>rc2ac</item>+      <item>rc2ar</item>+      <item>rc2poly</item>+      <item>rceps</item>+      <item>read_options</item>+      <item>read_pdb</item>+      <item>rectpuls</item>+      <item>resample</item>+      <item>rgb2gray</item>+      <item>rk2fixed</item>+      <item>rk4fixed</item>+      <item>rk8fixed</item>+      <item>rmfield</item>+      <item>rmle</item>+      <item>rmpath</item>+      <item>roicolor</item>+      <item>rosser</item>+      <item>rotparams</item>+      <item>rotv</item>+      <item>rref</item>+      <item>rsdecof</item>+      <item>rsencof</item>+      <item>rsgenpoly</item>+      <item>samin_example</item>+      <item>save_vrml</item>+      <item>sbispec</item>+      <item>scale_data</item>+      <item>scatter</item>+      <item>scatterplot</item>+      <item>select_3D_points</item>+      <item>selmo</item>+      <item>setdiff</item>+      <item>setfield</item>+      <item>setfields</item>+      <item>setxor</item>+      <item>sftrans</item>+      <item>sgolay</item>+      <item>sgolayfilt</item>+      <item>sinvest1</item>+      <item>slurp_file</item>+      <item>sortrows</item>+      <item>sound</item>+      <item>soundsc</item>+      <item>spdiags</item>+      <item>specgram</item>+      <item>speed</item>+      <item>speye</item>+      <item>spfun</item>+      <item>sphcat</item>+      <item>spline</item>+      <item>splot</item>+      <item>spones</item>+      <item>sprand</item>+      <item>sprandn</item>+      <item>spring</item>+      <item>spstats</item>+      <item>spsum</item>+      <item>sp_test</item>+      <item>sptest</item>+      <item>spvcat</item>+      <item>spy</item>+      <item>std2</item>+      <item>stem</item>+      <item>str2double</item>+      <item>strcmpi</item>+      <item>stretchlim</item>+      <item>strfind</item>+      <item>strmatch</item>+      <item>strncmp</item>+      <item>strncmpi</item>+      <item>strsort</item>+      <item>strtok</item>+      <item>strtoz</item>+      <item>struct</item>+      <item>strvcat</item>+      <item>summer</item>+      <item>sumskipnan</item>+      <item>surf</item>+      <item>surfc</item>+      <item>sym2poly</item>+      <item>symerr</item>+      <item>symfsolve</item>+      <item>tabulate</item>+      <item>tar</item>+      <item>temp_name</item>+      <item>test</item>+      <item>test_d2_min_1</item>+      <item>test_d2_min_2</item>+      <item>test_d2_min_3</item>+      <item>test_ellipj</item>+      <item>test_fminunc_1</item>+      <item>testimio</item>+      <item>test_inline_1</item>+      <item>test_min_1</item>+      <item>test_min_2</item>+      <item>test_min_3</item>+      <item>test_min_4</item>+      <item>test_minimize_1</item>+      <item>test_nelder_mead_min_1</item>+      <item>test_nelder_mead_min_2</item>+      <item>test_sncndn</item>+      <item>test_struct</item>+      <item>test_vmesh</item>+      <item>test_vrml_faces</item>+      <item>test_wpolyfit</item>+      <item>text</item>+      <item>textread</item>+      <item>tf2zp</item>+      <item>tfe</item>+      <item>thfm</item>+      <item>tics</item>+      <item>toeplitz</item>+      <item>toggle_grace_use</item>+      <item>transpose</item>+      <item>trapz</item>+      <item>triang</item>+      <item>tril</item>+      <item>trimmean</item>+      <item>tripuls</item>+      <item>trisolve</item>+      <item>triu</item>+      <item>tsademo</item>+      <item>tsearchdemo</item>+      <item>ucp</item>+      <item>uintlut</item>+      <item>unique</item>+      <item>unix</item>+      <item>unmkpp</item>+      <item>unscale_parameters</item>+      <item>vec2mat</item>+      <item>view</item>+      <item>vmesh</item>+      <item>voronoi</item>+      <item>voronoin</item>+      <item>vrml_arrow</item>+      <item>vrml_Background</item>+      <item>vrml_browse</item>+      <item>vrml_cyl</item>+      <item>vrml_demo_tutorial_1</item>+      <item>vrml_demo_tutorial_2</item>+      <item>vrml_demo_tutorial_3</item>+      <item>vrml_demo_tutorial_4</item>+      <item>vrml_ellipsoid</item>+      <item>vrml_faces</item>+      <item>vrml_flatten</item>+      <item>vrml_frame</item>+      <item>vrml_group</item>+      <item>vrml_kill</item>+      <item>vrml_lines</item>+      <item>vrml_material</item>+      <item>vrml_parallelogram</item>+      <item>vrml_PointLight</item>+      <item>vrml_points</item>+      <item>vrml_select_points</item>+      <item>vrml_surf</item>+      <item>vrml_text</item>+      <item>vrml_thick_surf</item>+      <item>vrml_transfo</item>+      <item>wavread</item>+      <item>wavwrite</item>+      <item>weekday</item>+      <item>wgn</item>+      <item>white</item>+      <item>wilkinson</item>+      <item>winter</item>+      <item>wpolyfit</item>+      <item>wpolyfitdemo</item>+      <item>write_pdb</item>+      <item>wsolve</item>+      <item>xcorr</item>+      <item>xcorr2</item>+      <item>xcov</item>+      <item>xlsread</item>+      <item>xmlwrite</item>+      <item>y2res</item>+      <item>zero_count</item>+      <item>zoom</item>+      <item>zp2tf</item>+      <item>zplane</item>+      <item>zscore</item>+    </list>+    +    <contexts>++      <context name="_normal" attribute="Normal Text" lineEndContext="#stay">++        <!-- Code folding -->+        <!--TODO: with this implementation, code folding will close a block also with a wrong+        end*: for istance, for can be closed by endif. This is done because the catchall end +        keyword is widely used to close a number of blocks (including if and for).+        If you have an improvement, please contribute it!-->+        <WordDetect context="#stay" attribute="Keyword" String="for" beginRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="endfor" endRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="if" beginRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="endif" endRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="do" beginRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="until" endRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="while" beginRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="endwhile" endRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="function" beginRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="endfunction" endRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="unwind_protect" beginRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="end_unwind_protect" endRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="parfor" beginRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="endparfor" endRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="classdef" beginRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="endclassdef" endRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="enumeration" beginRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="endenumeration" endRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="events" beginRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="endevents" endRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="methods" beginRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="endmethods" endRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="properties" beginRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="endproperties" endRegion="block" />+        <WordDetect context="#stay" attribute="Keyword" String="switch" beginRegion="Switch" />+        <WordDetect context="#stay" attribute="Keyword" String="endswitch" endRegion="Switch" />+        <WordDetect context="#stay" attribute="Keyword" String="try" beginRegion="Try" />+        <WordDetect context="#stay" attribute="Keyword" String="end_try_catch" endRegion="Try" />+        <!-- Catchall end keyword -->+        <WordDetect context="#stay" attribute="Keyword" String="end" endRegion="block" />++        <!-- Look-ahead for adjoint ' after variable, number literal, closing braces and .' -->+        <RegExpr context="_adjoint" attribute="Variable" String="[a-zA-Z]\w*(?=')" />+        <RegExpr context="_adjoint" attribute="Number" String="(\d+(\.\d+)?|\.\d+)([eE][+-]?\d+)?[ij]?(?=')" />+        <RegExpr context="_adjoint" attribute="Delimiter" String="[\)\]}](?=')" />+        <RegExpr context="_adjoint" attribute="Operator" String="\.'(?=')" />++        <!-- If ' is not the adjoint operator, it starts a string or an unterminated string;+        strings can be also with ", and accept the respective delimiter in them either+        by doubling it ('', "") or by escaping it (\', \") -->+        <RegExpr context="#stay" attribute="String" String="'([^'\\]|''|\\'|\\[^'])*'(?=[^']|$)" />+        <RegExpr context="#stay" attribute="Incomplete String" String="'([^']|''|\\')*" />+        <RegExpr context="#stay" attribute="String" String="&quot;([^&quot;\\]|&quot;&quot;|\\&quot;|\\[^&quot;])*&quot;(?=[^&quot;]|$)" />+        <RegExpr context="#stay" attribute="Incomplete String" String="&quot;([^&quot;]|&quot;&quot;|\\&quot;)*" />+        +        <!-- Handling of keywords, comments, functions, identifiers, numbers and braces -->+        <keyword context="#stay" attribute="Keyword" String="keywords" />+        <keyword context="#stay" attribute="Commands" String="commands" />+        <keyword context="#stay" attribute="Functions" String="functions" />+        <keyword context="#stay" attribute="Builtin" String="builtin"/>+        <keyword context="#stay" attribute="Forge" String="forge" />+        <RegExpr context="#stay" attribute="Comment" String="[%#].*$" />+        <RegExpr context="#stay" attribute="Variable" String="[a-zA-Z]\w*" />+        <RegExpr context="#stay" attribute="Number" String="(\d+(\.\d+)?|\.\d+)([eE][+-]?\d+)?[ij]?" />+        <AnyChar context="#stay" attribute="Delimiter" String="()[]{}"/>++        <!-- Three- and two-character operators -->+        <StringDetect context="#stay" attribute="Operator" String="..."/>+        <StringDetect context="#stay" attribute="Operator" String="=="/>+        <StringDetect context="#stay" attribute="Operator" String="~="/>+        <StringDetect context="#stay" attribute="Operator" String="!="/>+        <StringDetect context="#stay" attribute="Operator" String="&lt;="/>+        <StringDetect context="#stay" attribute="Operator" String="&gt;="/>+        <StringDetect context="#stay" attribute="Operator" String="&lt;&gt;"/>+        <StringDetect context="#stay" attribute="Operator" String="&amp;&amp;"/>+        <StringDetect context="#stay" attribute="Operator" String="||"/>+        <StringDetect context="#stay" attribute="Operator" String="++"/>+        <StringDetect context="#stay" attribute="Operator" String="--"/>+        <StringDetect context="#stay" attribute="Operator" String="**"/>+        <StringDetect context="#stay" attribute="Operator" String=".*"/>+        <StringDetect context="#stay" attribute="Operator" String=".**"/>+        <StringDetect context="#stay" attribute="Operator" String=".^"/>+        <StringDetect context="#stay" attribute="Operator" String="./"/>+        <StringDetect context="#stay" attribute="Operator" String=".'"/>++        <!-- Single-character operators -->+        <AnyChar context="#stay" attribute="Operator" String="!&quot;%(*+,/;=>[]|~#&amp;)-:&lt;&gt;\^"/>+        +      </context>+++      <!--Context entered after encountering an ' adjoint operator -->+      <context name="_adjoint" attribute="Operator" lineEndContext="#pop">+        <RegExpr context="#pop" attribute="Operator" String="'+" />+      </context>+++    </contexts>++    <itemDatas>+      <itemData name="Normal Text" defStyleNum="dsNormal" spellChecking="false"/>+      <itemData name="Variable" defStyleNum="dsNormal" spellChecking="false"/>+      <itemData name="Operator" defStyleNum="dsOperator" spellChecking="false"/>+      <itemData name="Number" defStyleNum="dsFloat" spellChecking="false"/>+      <itemData name="Delimiter" defStyleNum="dsNormal" spellChecking="false"/>+      <itemData name="String" defStyleNum="dsString"/>+      <itemData name="Incomplete String" defStyleNum="dsChar" spellChecking="false"/>+      <itemData name="Keyword"  defStyleNum="dsControlFlow" spellChecking="false"/>+      <itemData name="Comment" defStyleNum="dsComment"/>+      <itemData name="Functions" defStyleNum="dsFunction" spellChecking="false"/>+      <itemData name="Forge" defStyleNum="dsFunction" spellChecking="false"/>+      <itemData name="Builtin" defStyleNum="dsBuiltIn" spellChecking="false"/>+      <itemData name="Commands" defStyleNum="dsBuiltIn" spellChecking="false"/>+    </itemDatas>++  </highlighting>++  <general>+    <comments>+      <comment name="singleLine" start="%" />+      <comment name="singleLine" start="#" />+    </comments>+    <keywords weakDeliminator="." casesensitive="1"/>   </general>  </language>
syntax/perl.xml view
@@ -39,7 +39,7 @@     Enhance tr/// and y/// support. -->-<language name="Perl" version="7" kateversion="2.4" section="Scripts" extensions="*.pl;*.PL;*.pm;*.pl6;*.PL6;*.p6;*.pm6;" mimetype="application/x-perl;text/x-perl" priority="5" author="Anders Lund (anders@alweb.dk)" license="LGPLv2">+<language name="Perl" version="10" kateversion="2.4" section="Scripts" extensions="*.pl;*.PL;*.pm" mimetype="application/x-perl;text/x-perl" priority="5" author="Anders Lund (anders@alweb.dk)" license="LGPLv2">   <highlighting>     <list name="keywords">       <item>if</item>@@ -252,6 +252,7 @@       <item>rewinddir</item>       <item>rindex</item>       <item>rmdir</item>+      <item>say</item>       <item>scalar</item>       <item>seek</item>       <item>seekdir</item>@@ -383,8 +384,11 @@          <RegExpr attribute="Operator" context="find_pattern" String="\b(?:m|qr)(?=\s*[^\w\s\]})])" /> -        <RegExpr attribute="Normal Text" context="#stay" String="[\w_]+\s*/" />-        <RegExpr attribute="Normal Text" context="#stay" String="[&lt;&gt;&quot;':]/" />+        <RegExpr attribute="Normal Text" context="#stay" String="[\w_]+\s*//?\=?" />+        <RegExpr attribute="Normal Text" context="#stay" String="[&lt;&gt;&quot;':]//?\=?" />+        <!-- Avoid conflicts between operators / and // -->+        <StringDetect attribute="Normal Text" context="#stay" String="//=" />+        <Detect2Chars attribute="Normal Text" context="#stay" char="/" char1="/" />         <DetectChar attribute="Operator" context="pattern_slash" char="/" beginRegion="Pattern" />         <RegExpr attribute="Operator" context="#stay" String="-[rwxoRWXOeszfdlpSbctugkTBMAC]\b" /> 
syntax/php.xml view
@@ -73,7 +73,7 @@   <!ENTITY types "int|integer|bool|boolean|float|double|real|string|array|object"> ]> -<language name="PHP/PHP" indenter="cstyle" version="9" kateversion="3.4" section="Scripts" extensions="" priority="5" mimetype="" hidden="true">+<language name="PHP/PHP" indenter="cstyle" version="10" kateversion="5.0" section="Scripts" extensions="" priority="5" mimetype="" hidden="true">   <highlighting>     <!-- https://secure.php.net/manual/en/reserved.keywords.php -->     <list name="control structures">
syntax/powershell.xml view
@@ -1,7 +1,7 @@ <!DOCTYPE language SYSTEM "language.dtd"> <language   name="PowerShell"-  version="4"+  version="5"   kateversion="5.0"   extensions="*.ps1;*.ps1m;*.ps1d"   section="Scripts"@@ -892,7 +892,12 @@         <RegExpr attribute="Symbol" context="Member" String="[.]{1,1}" />         <AnyChar attribute="Symbol" context="#stay" String=":!%&amp;()+,-/.*&lt;=&gt;?[]|~^&#59;"/>       </context>+      <context attribute="String Char" lineEndContext="#stay" name="StringEscape">+        <RegExpr attribute="String Char" String="`[`&quot;0abefnrtv]" context="#stay"/>+        <RegExpr attribute="String Char" String="`u\{[0-9A-Fa-f]+\}" context="#stay"/>+      </context>       <context attribute="String" lineEndContext="#pop" name="String">+        <IncludeRules context="StringEscape"/>         <LineContinue attribute="String" context="#pop"/>         <DetectChar attribute="String" context="#pop" char="&quot;"/>       </context>@@ -916,6 +921,7 @@       <itemData name="Function"     defStyleNum="dsFunction" spellChecking="false"/>       <itemData name="Data Type"    defStyleNum="dsDataType" spellChecking="false"/>       <itemData name="String"       defStyleNum="dsString"/>+      <itemData name="String Char"  defStyleNum="dsChar" spellChecking="false"/>       <itemData name="HereString"       defStyleNum="dsVerbatimString"/>       <itemData name="Comment"      defStyleNum="dsComment"/>       <itemData name="Cmdlets"      defStyleNum="dsBuiltIn" spellChecking="false"/>
syntax/python.xml view
@@ -1,5 +1,10 @@ <?xml version="1.0" encoding="UTF-8"?>-<!DOCTYPE language>+<!DOCTYPE language SYSTEM "language.dtd"+[+	<!ENTITY digitPart "[0-9](?:_?[0-9])*">+	<!ENTITY beforeDigit "(?&lt;![\.\w[:^ascii:]])">+	<!ENTITY beforePointFloat "(?&lt;![\w[:^ascii:]])">+]> <!-- Python syntax highlightning v0.9 by Per Wigren --> <!-- Python syntax highlighting v1.9 by Michael Bueker (improved keyword differentiation) --> <!-- Python syntax highlighting v1.97 by Paul Giannaros -->@@ -14,7 +19,7 @@ <!-- v2.07 add support for %prog and co, see bug 142832 --> <!-- v2.08 add missing overloaders, new Python 3 statements, builtins, and keywords --> <!-- v2.29 recognize escape sequenzes correctly -->-<language name="Python" version="9" style="python" indenter="python" kateversion="5.0" section="Scripts" extensions="*.py;*.pyw;SConstruct;SConscript" mimetype="application/x-python;text/x-python;text/x-python3" casesensitive="1" author="Michael Bueker" license="">+<language name="Python" version="10" style="python" indenter="python" kateversion="5.0" section="Scripts" extensions="*.py;*.pyw;SConstruct;SConscript" mimetype="application/x-python;text/x-python;text/x-python3" casesensitive="1" author="Michael Bueker" license=""> 	<highlighting> 		<list name="import"> 			<item>import</item>@@ -65,6 +70,7 @@ 			<item>ascii</item> 			<item>basestring</item> 			<item>bin</item>+			<item>breakpoint</item> 			<item>bool</item> 			<item>buffer</item> 			<item>bytearray</item>@@ -342,15 +348,17 @@ 				<keyword attribute="Overloaders" String="overloaders" context="#stay"/> 				<RegExpr attribute="Normal Text" String="[a-zA-Z_][a-zA-Z_0-9]{2,}" context="#stay"/> -				<RegExpr attribute="Complex" String=" ((([0-9]*\.[0-9]+|[0-9]+\.)|([0-9]+|([0-9]*\.[0-9]+|[0-9]+\.))[eE](\+|-)?[0-9]+)|[0-9]+)[jJ]" context="#stay"/>-				<Float attribute="Float" context="#stay" />-				<HlCHex attribute="Hex" context="#stay"/>-				<HlCOct attribute="Octal" context="#stay"/>-				<Int attribute="Int" context="Int Suffixes"/>--				<RegExpr attribute="Int" String=" ([0-9]+_)+[0-9]+" context="#stay"/>-				<RegExpr attribute="Float" String=" ([0-9]+_)+[0-9]+\.[0-9]+" context="#stay"/>-				<RegExpr attribute="Hex" String=" [0-9]x([A-F0-9]+_)+[A-F0-9]+" context="#stay"/>+				<!-- Complex: 1j ; 1.1j ; 1.j ; .1j ; 1e3j ; 1.1e3j ; 1.e3j ; .1e3j -->+				<RegExpr attribute="Complex" String="(?:&beforeDigit;&digitPart;(?:\.(?:&digitPart;)?)?|&beforePointFloat;\.&digitPart;)(?:[eE][\+\-]?&digitPart;)?[jJ]\b" context="#stay"/>+				<!-- Hexadecimal: 0xA1, Binary: 0b01, Octal: 0o71 -->+				<RegExpr attribute="Hex" String="&beforeDigit;0[xX](?:_?[\da-fA-F])+\b" context="#stay"/>+				<RegExpr attribute="Binary" String="&beforeDigit;0[bB](?:_?[01])+\b" context="#stay"/>+				<RegExpr attribute="Octal" String="&beforeDigit;0[oO](?:_?[0-7])+\b" context="#stay"/>+				<!-- Float: 1.1 ; 1. ; .1 ; 1e3 ; 1.1e3 ; 1.e3 ; .1e3 -->+				<RegExpr attribute="Float" String="(?:&beforeDigit;&digitPart;(?:\.(?:&digitPart;)?)?|&beforePointFloat;\.&digitPart;)[eE][\+\-]?&digitPart;\b" context="#stay"/>+				<RegExpr attribute="Float" String="(?:&beforeDigit;&digitPart;\.(?:&digitPart;\b)?|&beforePointFloat;\.&digitPart;\b)" context="#stay"/>+				<!-- Decimal: 123 ; 000 -->+				<RegExpr attribute="Int" String="&beforeDigit;(?:[1-9](?:_?\d)*|0(?:_?0)*)[lL]?\b" context="#stay"/>  				<DetectChar attribute="Normal Text" char="{" context="Dictionary" beginRegion="Dictionary"/> 				<DetectChar attribute="Normal Text" char="[" context="List" beginRegion="List"/>@@ -362,14 +370,10 @@  				<IncludeRules context="StringVariants" /> -				<RegExpr attribute="Decorator" String="@[_a-zA-Z][\._a-zA-Z0-9]*" firstNonSpace="true"/>+				<RegExpr attribute="Decorator" String="@[_a-zA-Z[:^ascii:]][\._a-zA-Z0-9[:^ascii:]]*" firstNonSpace="true"/> 				<AnyChar attribute="Operator" String="+*/%\|=;\!&lt;&gt;!^&amp;~-@" context="#stay"/> 			</context> -			<context name="Int Suffixes" attribute="Int" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">-				<StringDetect attribute="Int" context="#pop" String="L" insensitive="true"/>-			</context>- 			<context name="#CheckForString" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop"> 				<DetectSpaces/> 				<LineContinue attribute="Normal Text" context="CheckForStringNext"/>@@ -661,6 +665,7 @@ 			<itemData name="Int" defStyleNum="dsDecVal" spellChecking="false"/> 			<itemData name="Hex" defStyleNum="dsBaseN" spellChecking="false"/> 			<itemData name="Octal" defStyleNum="dsBaseN" spellChecking="false"/>+			<itemData name="Binary" defStyleNum="dsBaseN" spellChecking="false"/> 			<itemData name="Complex" defStyleNum="dsOthers" spellChecking="false"/> 			<itemData name="Comment" defStyleNum="dsComment"/> 			<itemData name="String" defStyleNum="dsString"/>
+ syntax/qml.xml view
@@ -0,0 +1,190 @@+<?xml version="1.0" encoding="UTF-8"?>+<!DOCTYPE language SYSTEM "language.dtd"+[+  <!ENTITY identifier "[a-zA-Z_$][\w$]*">+]>+<!-- Author: Milian Wolff <mail@milianw.de> -->+<language name="QML" version="7" kateversion="5.0" section="Scripts" extensions="*.qml;*.qmltypes"+          mimetype="text/x-qml;application/x-qml" indenter="cstyle"+          author="Milian Wolff (mail@milianw.de)" license="MIT">+  <highlighting>+    <list name="elements">+      <!-- see: http://doc.trolltech.com/4.7-snapshot/qmlelements.html -->+      <item>State</item>+      <item>PropertyChanges</item>+      <item>StateGroup</item>+      <item>ParentChange</item>+      <item>StateChangeScript</item>+      <item>AnchorChanges</item>+      <item>PropertyAnimation</item>+      <item>NumberAnimation</item>+      <item>ColorAnimation</item>+      <item>SequentialAnimation</item>+      <item>ParallelAnimation</item>+      <item>PauseAnimation</item>+      <item>PropertyAction</item>+      <item>ParentAction</item>+      <item>ScriptAction</item>+      <item>Transition</item>+      <item>SpringFollow</item>+      <item>EaseFollow</item>+      <item>Behavior</item>+      <item>Binding</item>+      <item>ListModel</item>+      <item>ListElement</item>+      <item>VisualItemModel</item>+      <item>XmlListModel</item>+      <item>XmlRole</item>+      <item>DateTimeFormatter</item>+      <item>NumberFormatter</item>+      <item>Script</item>+      <item>Connections</item>+      <item>Component</item>+      <item>Timer</item>+      <item>QtObject</item>+      <item>Item</item>+      <item>Rectangle</item>+      <item>Image</item>+      <item>BorderImage</item>+      <item>Text</item>+      <item>TextInput</item>+      <item>TextEdit</item>+      <item>MouseArea</item>+      <item>FocusScope</item>+      <item>Flickable</item>+      <item>Flipable</item>+      <item>WebView</item>+      <item>Loader</item>+      <item>Repeater</item>+      <item>SystemPalette</item>+      <item>GraphicsObjectContainer</item>+      <item>LayoutItem</item>+      <item>ListView</item>+      <item>GridView</item>+      <item>PathView</item>+      <item>Path</item>+      <item>PathLine</item>+      <item>PathQuad</item>+      <item>PathCubic</item>+      <item>PathAttribute</item>+      <item>PathPercent</item>+      <item>Column</item>+      <item>Row</item>+      <item>Grid</item>+      <item>Scale</item>+      <item>Rotation</item>+      <item>Blur</item>+      <item>Colorize</item>+      <item>DropShadow</item>+      <item>Opacity</item>+      <item>Particles</item>+      <item>ParticleMotionLinear</item>+      <item>ParticleMotionGravity</item>+      <item>ParticleMotionWander</item>+      <!-- here some other items I find in the examples, we really need a proper list of them... -->+      <item>Gradient</item>+      <item>GradientStop</item>+      <item>MouseRegion</item>+    </list>+    <!-- keywords not part of JavaScript -->+    <list name="extra-keywords">+      <item>readonly</item>+    </list>+    <list name="types">+      <!-- see: http://doc.trolltech.com/4.7-snapshot/qml-extending-types.html -->+      <item>string</item>+      <item>int</item>+      <item>bool</item>+      <item>date</item>+      <item>color</item>+      <item>url</item>+      <item>real</item>+      <item>double</item>+      <item>var</item>+      <item>variant</item>+    </list>+    <contexts>+      <context attribute="Normal Text" lineEndContext="#stay" name="Normal">+        <DetectSpaces/>+        <WordDetect attribute="Import" context="Import" String="import"/>+        <keyword attribute="Elements" context="#stay" String="elements" />+        <keyword attribute="Keywords" String="extra-keywords"/>+        <WordDetect attribute="Signal" context="Signal" String="signal" />+        <WordDetect attribute="Keywords" context="Property" String="default property" />+        <WordDetect attribute="Keywords" context="Property" String="property" />+        <DetectChar attribute="String" context="String" char="&quot;" />+        <DetectChar attribute="Normal Text" context="Object" char="{" beginRegion="Brace" />+        <!-- Normal##JavaScript -->+        <IncludeRules context="FindNumbers##JavaScript" />+        <IncludeRules context="FindKeywords##JavaScript" />+        <IncludeRules context="FindStrings##JavaScript" />+        <RegExpr attribute="Objects" context="FindMemberObjectMath##JavaScript" String="\bMath(?=\s*\.)" />+        <RegExpr attribute="Objects" context="#stay" String="\b[A-Z][\w$]*(?=\s*\.)" />+        <IncludeRules context="FindObjectMembersAndFunctions##JavaScript" />+        <IncludeRules context="JSBase##JavaScript" />+      </context>+      <context attribute="ImportValue" lineEndContext="#pop" name="Import">+      </context>+      <context attribute="Normal Text" lineEndContext="#pop" name="Property">+        <WordDetect attribute="Property Type" context="#stay" String="alias" />+        <keyword attribute="Property Type" context="#stay" String="types" />+        <DetectSpaces />+        <DetectIdentifier />+        <DetectSpaces />+        <DetectChar char=":" context="#pop" />+      </context>+      <context attribute="Normal Text" lineEndContext="#pop" name="Signal">+        <DetectSpaces />+        <DetectIdentifier />+        <DetectChar char="(" context="SignalParameter" />+      </context>+      <context attribute="Normal Text" name="SignalParameter" lineEndContext="#pop">+        <DetectSpaces />+        <keyword attribute="Property Type" context="#stay" String="types" />+        <DetectSpaces />+        <DetectIdentifier />+        <DetectSpaces />+        <DetectChar char=")" context="#pop"/>+      </context>+      <!-- QML supports multi-line strings, which are not supported by Javascript -->+      <context attribute="String" lineEndContext="#stay" name="String">+        <DetectChar attribute="String" context="RegExpAfterString##JavaScript" char="&quot;" />+        <IncludeRules context="Escape##JavaScript" />+      </context>+      <context attribute="Normal Text" lineEndContext="#stay" name="Object">+        <!--DetectIdentifier-->+        <RegExpr attribute="Property Type" String="&identifier;\s*(?=:)" />+        <!-- Avoid highlighting Property Type before ":" in conditional expressions. -->+        <RegExpr attribute="Symbol" context="ConditionalExpression" String="\?(?=[^\}]*&identifier;\s*\:)" />+        <DetectChar attribute="Normal Text" char="}" endRegion="Brace" context="#pop" />+        <IncludeRules context="Normal" />+      </context>+      <context attribute="Normal Text" lineEndContext="#pop" name="ConditionalExpression">+        <AnyChar context="#pop" String=":}" lookAhead="true" />+        <DetectChar attribute="Symbol" context="#stay" char="?" />+        <IncludeRules context="Normal" />+      </context>+    </contexts>+    <itemDatas>+      <itemData name="Normal Text"  defStyleNum="dsNormal"  spellChecking="false" />+      <itemData name="Import"  defStyleNum="dsKeyword"  spellChecking="false" />+      <itemData name="ImportValue"  defStyleNum="dsString"  spellChecking="false" />+      <itemData name="Keywords"  defStyleNum="dsKeyword"  spellChecking="false" />+      <itemData name="Elements" defStyleNum="dsKeyword" color="#008000" selColor="#00ffff" bold="0" italic="0" spellChecking="false"/>+      <itemData name="Signal" defStyleNum="dsKeyword" color="#0095ff" selColor="#ffffff" spellChecking="false"/>+      <itemData name="Property Type" defStyleNum="dsDataType" spellChecking="false" />+      <itemData name="String"       defStyleNum="dsString" />+      <itemData name="Objects"      defStyleNum="dsExtension" bold="0" spellChecking="false" />+      <itemData name="Symbol"       defStyleNum="dsOperator" spellChecking="false" />+    </itemDatas>+  </highlighting>+  <general>+    <comments>+      <comment name="singleLine" start="//" />+      <comment name="multiLine" start="/*" end="*/" />+    </comments>+    <keywords casesensitive="1" />+  </general>+</language>++<!-- kate: tab-width 2; replace-tabs on; indent-width 2; -->
syntax/rest.xml view
@@ -1,9 +1,12 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE language SYSTEM "language.dtd" [-        <!ENTITY inlinestart "(^|[-\s&apos;&quot;\(\[{&lt;/:‘“’«¡¿‐‑‒–— ])">+        <!ENTITY inlinestart "(?:^|(?&lt;=[-\s&apos;&quot;\(\[{&lt;/:‘“’«¡¿‐‑‒–— ]))">         <!ENTITY inlineend "(?=[-\s’”»‐‑‒–— &apos;&quot;\)\]}&gt;/:\.,;!\?\\]|$)">         <!ENTITY SimpleReferenceNameChars "\w_\.:\+\-">++        <!-- Keep in sync with Markdown -->+        <!ENTITY startlink "(?:https?|ftp)\://"> ]> <!--   This file is part of KDE's kate project.@@ -11,7 +14,7 @@   Copyright 2010 Matt Williams (matt@milliams.com)   Copyright 2014 Matthew Woehlke (mw_triad@users.sourceforge.net)   -->-<language name="reStructuredText" extensions="*.rst" section="Markup" mimetype="text/x-rst" version="4" kateversion="2.4" casesensitive="1">+<language name="reStructuredText" extensions="*.rst" section="Markup" mimetype="text/x-rst" version="6" kateversion="5.0" casesensitive="1">    <highlighting> @@ -24,11 +27,16 @@         <RegExpr attribute="Citation" context="#stay" String="^\s*\.\. \[[&SimpleReferenceNameChars;]+\]\s" minimal="true" column="0"/>         <RegExpr attribute="HyperlinkTarget" context="#stay" String="^\s*(\.\. (__:|_[&SimpleReferenceNameChars; ]+:(\s|$))|__ )" minimal="true" column="0"/>         <StringDetect attribute="Code" String=".. code-block::" context="CodeBlock" firstNonSpace="true"/>-        <RegExpr attribute="Directive" context="#stay" String="^\s*\.\. [\w\-_\.]+::(\s|$)" minimal="true" column="0"/>+        <StringDetect attribute="Code" String=".. code::" context="CodeBlock" firstNonSpace="true"/>+        <RegExpr attribute="Directive" context="#stay" String="^\s*\.\. ([\w\-_\.]+)(:[\w\-_\.]+)*::(\s|$)" minimal="true" column="0"/>         <RegExpr attribute="Code" String="::$" context="CodeBlock" />         <RegExpr attribute="SubstitutionDefinition" context="#stay" String="^\s*\.\. \|[&SimpleReferenceNameChars; ]+\|\s+[&SimpleReferenceNameChars;]+::\s" minimal="true" column="0"/>         <RegExpr attribute="Field" String=":(?=([^:]*\\:)*[^:]*:(\s|$))" context="Field" firstNonSpace="true"/>-        <RegExpr attribute="Comment" context="Comment" String="^(\s*)\.\.\s(?![\w\-_\.]+::(\s|$))" column="0"/>+        <RegExpr attribute="Comment" context="Comment" String="^(\s*)\.\.(\s|$)(?!([\w\-_\.]+)(:[\w\-_\.]+)*::(\s|$))" column="0"/>++        <!-- Keep in sync with Markdown’s implicitlink entity -->+        <RegExpr attribute="StandaloneHyperlink" context="#stay" String="\b&startlink;[^&quot;&gt;\s`\)]*[^\s!&quot;&apos;`\(\)\*,\.:;&lt;&gt;\?~\]\}\\](?=[[:punct:]]*(?:[\s\)]|$))" />+       </context>        <context name="InlineMarkup" attribute="Normal" lineEndContext="#stay">@@ -37,8 +45,9 @@         <RegExpr attribute="InlineInternalTarget" context="#stay" String="&inlinestart;_`[^\s].*`&inlineend;" minimal="true"/>         <RegExpr attribute="FootnoteReference" context="#stay" String="&inlinestart;\[[&SimpleReferenceNameChars;]+\]_&inlineend;" minimal="true"/>         <RegExpr attribute="HyperlinkReference" context="#stay" String="&inlinestart;(`[^\s].*`|\w+)_&inlineend;" minimal="true"/>-        <RegExpr attribute="InterpretedText" context="TrailingRole" String="&inlinestart;`[^\s].*`(?=:[\w\-_\.\+]+:)" minimal="true"/>-        <RegExpr attribute="Role" String=":[\w\-_\.\+]+:(?=`)" context="Role"/>+        <RegExpr attribute="InterpretedText" context="TrailingRole" String="&inlinestart;`[^\s].*`(?=:([\w\-_\.\+]+)(:[\w\-_\.\+]+)*:)" minimal="true"/>+        <RegExpr attribute="Role" String=":([\w\-_\.\+]+)(:[\w\-_\.\+]+)*:(?=`)" context="Role"/>+        <RegExpr attribute="DefaultRole" context="#stay" String="&inlinestart;`[^\s].*`&inlineend;" minimal="true"/>       </context>        <context name="Field" attribute="Field" lineEndContext="#stay">@@ -92,8 +101,10 @@       <itemData name="Directive" defStyleNum="dsDataType" />       <itemData name="SubstitutionDefinition" defStyleNum="dsDataType" />       <itemData name="Role" defStyleNum="dsKeyword" />+      <itemData name="DefaultRole" defStyleNum="dsDecVal" />       <itemData name="Code" defStyleNum="dsDataType" />       <itemData name="Comment" defStyleNum="dsComment" />+      <itemData name="StandaloneHyperlink" defStyleNum="dsOthers" />     </itemDatas>    </highlighting>
syntax/rust.xml view
@@ -33,7 +33,7 @@ 	<!ENTITY commonEscape "([trn0&apos;&quot;\\]|x[0-9a-fA-F]{2})"> 	<!ENTITY unicodeEscape "u\{([0-9a-fA-F]_*){1,6}\}"> ]>-<language name="Rust" version="6" kateversion="5.0" section="Sources" extensions="*.rs" mimetype="text/rust" priority="15" license="MIT" author="The Rust Project Developers">+<language name="Rust" version="7" kateversion="5.0" section="Sources" extensions="*.rs" mimetype="text/rust" priority="15" license="MIT" author="The Rust Project Developers"> <highlighting> 	<list name="fn"> 		<item>fn</item>@@ -45,6 +45,8 @@ 		<item>abstract</item> 		<item>alignof</item> 		<item>as</item>+		<item>async</item>+		<item>await</item> 		<item>become</item> 		<item>box</item> 		<item>break</item>@@ -53,6 +55,7 @@ 		<item>crate</item> 		<item>default</item> 		<item>do</item>+		<item>dyn</item> 		<item>else</item> 		<item>enum</item> 		<item>extern</item>@@ -76,14 +79,12 @@ 		<item>pure</item> 		<item>ref</item> 		<item>return</item>-		<item>Self</item>-		<item>self</item> 		<item>sizeof</item> 		<item>static</item> 		<item>struct</item> 		<item>super</item> 		<item>trait</item>-		<item>type</item>+		<item>try</item> 		<item>typeof</item> 		<item>union</item> 		<item>unsafe</item>@@ -93,52 +94,125 @@ 		<item>where</item> 		<item>while</item> 		<item>yield</item>+		<!-- Also (these keywords are in other lists):+		     type, Self, self. --> 	</list> 	<list name="traits">-		<!-- FIXME: Some traits may be obsolete and must be removed -->+		<!-- Core Traits -->+		<item>Add</item>+		<item>AddAssign</item>+		<item>Alloc</item>+		<item>Any</item> 		<item>AsMut</item> 		<item>AsRef</item>-		<item>AsSlice</item>-		<item>CharExt</item>+		<item>Binary</item>+		<item>BitAnd</item>+		<item>BitAndAssign</item>+		<item>BitOr</item>+		<item>BitOrAssign</item>+		<item>BitXor</item>+		<item>BitXorAssign</item>+		<item>Borrow</item>+		<item>BorrowMut</item>+		<item>BuildHasher</item> 		<item>Clone</item>+		<item>CoerceUnsized</item> 		<item>Copy</item> 		<item>Debug</item>-		<item>Decodable</item> 		<item>Default</item>+		<item>Deref</item>+		<item>DerefMut</item>+		<item>DispatchFromDyn</item> 		<item>Display</item>+		<item>Div</item>+		<item>DivAssign</item> 		<item>DoubleEndedIterator</item> 		<item>Drop</item>-		<item>Encodable</item> 		<item>Eq</item> 		<item>ExactSizeIterator</item> 		<item>Extend</item>+		<item>FixedSizeArray</item> 		<item>Fn</item>+		<item>FnBox</item> 		<item>FnMut</item> 		<item>FnOnce</item> 		<item>From</item>-		<item>FromPrimitive</item>+		<item>FromIterator</item>+		<item>FromStr</item>+		<item>FusedIterator</item>+		<item>Future</item>+		<item>Generator</item>+		<item>GlobalAlloc</item> 		<item>Hash</item>+		<item>Hasher</item>+		<item>Index</item>+		<item>IndexMut</item> 		<item>Into</item> 		<item>IntoIterator</item> 		<item>Iterator</item>-		<item>IteratorExt</item>-		<item>MutPtrExt</item>+		<item>LowerExp</item>+		<item>LowerHex</item>+		<item>Mul</item>+		<item>MulAssign</item>+		<item>Neg</item>+		<item>Not</item>+		<item>Octal</item> 		<item>Ord</item> 		<item>PartialEq</item> 		<item>PartialOrd</item>-		<item>PtrExt</item>-		<item>Rand</item>-		<item>RustcDecodable</item>-		<item>RustcEncodable</item>+		<item>Pointer</item>+		<item>Product</item>+		<item>RangeBounds</item>+		<item>Rem</item>+		<item>RemAssign</item> 		<item>Send</item>+		<item>Shl</item>+		<item>ShlAssign</item>+		<item>Shr</item>+		<item>ShrAssign</item> 		<item>Sized</item>+		<item>SliceIndex</item>+		<item>Step</item>+		<item>Sub</item>+		<item>SubAssign</item>+		<item>Sum</item>+		<item>Sync</item>+		<item>TrustedLen</item>+		<item>Try</item>+		<item>TryFrom</item>+		<item>TryInto</item>+		<item>Unpin</item>+		<item>Unsize</item>+		<item>UpperExp</item>+		<item>UpperHex</item>+		<item>Write</item>+		<!-- Standard Library Traits -->+		<item>AsSlice</item>+		<item>BufRead</item>+		<item>CharExt</item>+		<item>Decodable</item>+		<item>Encodable</item>+		<item>Error</item>+		<item>FromPrimitive</item>+		<item>IteratorExt</item>+		<item>MultiSpan</item>+		<item>MutPtrExt</item>+		<item>Pattern</item>+		<item>PtrExt</item>+		<item>Rand</item>+		<item>Read</item>+		<item>RefUnwindSafe</item>+		<item>Seek</item> 		<item>SliceConcatExt</item> 		<item>SliceExt</item> 		<item>Str</item> 		<item>StrExt</item>-		<item>Sync</item>+		<item>TDynBenchFn</item>+		<item>Termination</item> 		<item>ToOwned</item>+		<item>ToSocketAddrs</item> 		<item>ToString</item>+		<item>UnwindSafe</item> 	</list> 	<list name="types"> 		<item>bool</item>@@ -213,6 +287,32 @@ 		<item>Failure</item> 		<item>Cons</item> 		<item>Nil</item>+		<!-- Core Constants -->+		<!-- char/f32 -->+		<item>MAX</item>+		<!-- char -->+		<item>REPLACEMENT_CHARACTER</item>+		<item>UNICODE_VERSION</item>+		<!-- f32 -->+		<item>DIGITS</item>+		<item>EPSILON</item>+		<item>INFINITY</item>+		<item>MANTISSA_DIGITS</item>+		<item>MAX_10_EXP</item>+		<item>MAX_EXP</item>+		<item>MIN</item>+		<item>MIN_10_EXP</item>+		<item>MIN_EXP</item>+		<item>MIN_POSITIVE</item>+		<item>NAN</item>+		<item>NEG_INFINITY</item>+		<item>RADIX</item>+		<!-- path -->+		<item>MAIN_SEPARATOR</item>+		<!-- sync -->+		<item>ONCE_INIT</item>+		<!-- time -->+		<item>UNIX_EPOCH</item> 	</list> 	<list name="cconstants"> 		<item>EXIT_FAILURE</item>@@ -263,32 +363,43 @@ 			<DetectSpaces/> 			<keyword String="fn" attribute="Keyword" context="Function"/> 			<keyword String="type" attribute="Keyword" context="Type"/>+			<keyword String="self" attribute="Self" context="#stay"/> 			<keyword String="keywords" attribute="Keyword" context="#stay"/> 			<keyword String="types" attribute="Type" context="#stay"/>-			<keyword String="traits" attribute="Trait" context="#stay"/> 			<keyword String="ctypes" attribute="CType" context="#stay"/>-			<keyword String="self" attribute="Self" context="#stay"/> 			<keyword String="constants" attribute="Constant" context="#stay"/> 			<keyword String="cconstants" attribute="CConstant" context="#stay"/>-			<Detect2Chars char="/" char1="/" attribute="Comment" context="Commentar 1"/>-			<Detect2Chars char="/" char1="*" attribute="Comment" context="Commentar 2" beginRegion="Comment"/>-			<RegExpr String="\b0(x[0-9a-fA-F_]+|o[0-7_]+|b[01_]+)&rustIntSuf;\b" attribute="Number" context="#stay"/> <!-- Hexadecimal, Octal & Binary -->-			<RegExpr String="\b[0-9][0-9_]*((\.[0-9][0-9_]*)?([eE][\+\-]?[0-9_]+)?(f32|f64)?|&rustIntSuf;)\b" attribute="Number" context="#stay"/> <!-- Float & Decimal -->-			<RegExpr String="\b0(b[01_]*[^01_]|o[0-7_]*[^0-7_]|x[0-9a-fA-F_]*[^0-9a-fA-F_])\w*&rustIntSuf;\b" attribute="Error" context="#stay"/> <!-- Invalid number -->+			<keyword String="traits" attribute="Trait" context="#stay"/>+			<IncludeRules context="FindComments"/>+			<!-- Hexadecimal, Octal & Binary -->+			<RegExpr String="\b0(x[0-9a-fA-F_]+|o[0-7_]+|b[01_]+)&rustIntSuf;\b" attribute="Number" context="#stay"/>+			<!-- Float & Decimal -->+			<RegExpr String="\b[0-9][0-9_]*((\.[0-9][0-9_]*)?([eE][\+\-]?[0-9_]+)?(f32|f64)?|&rustIntSuf;)\b" attribute="Number" context="#stay"/>+			<!-- Invalid number -->+			<RegExpr String="\b0(b[01_]*[^01_]|o[0-7_]*[^0-7_]|x[0-9a-fA-F_]*[^0-9a-fA-F_])\w*&rustIntSuf;\b" attribute="Error" context="#stay"/> 			<Detect2Chars char="#" char1="[" attribute="Attribute" context="Attribute" beginRegion="Attribute"/> 			<StringDetect String="#![" attribute="Attribute" context="Attribute" beginRegion="Attribute"/> 			<RegExpr String="&rustIdent;::" attribute="Scope"/>+			<RegExpr String="::(?=[^\s\:])" attribute="Scope"/> <!-- Points after keyword or group { } --> 			<RegExpr String="&rustIdent;!" attribute="Macro"/> 			<RegExpr String="&apos;&rustIdent;(?!&apos;)" attribute="Lifetime"/> 			<DetectChar char="{" attribute="Symbol" context="#stay" beginRegion="Brace" /> 			<DetectChar char="}" attribute="Symbol" context="#stay" endRegion="Brace" />+			<!-- Raw Strings --> 			<RegExpr String="b?r(#*)&quot;" attribute="String" context="RawString" dynamic="true"/>+			<!-- Byte Strings --> 			<Detect2Chars char="b" char1="&quot;" attribute="String" context="ByteString"/>+			<!-- Strings --> 			<DetectChar char="&quot;" attribute="String" context="String"/>-			<RegExpr String="b&apos;(?=([^&apos;\\]|\\&commonEscape;)&apos;)" attribute="Character" context="Character"/> <!-- Byte -->+			<!-- Byte -->+			<RegExpr String="b&apos;(?=([^&apos;\\]|\\&commonEscape;)&apos;)" attribute="Character" context="Character"/>+			<!-- Character --> 			<DetectChar char="&apos;" attribute="Character" context="Character"/>-			<DetectChar char="[" attribute="Symbol" context="#stay" beginRegion="Bracket" />-			<DetectChar char="]" attribute="Symbol" context="#stay" endRegion="Bracket" />+			<DetectChar char="[" attribute="Normal Text" context="#stay" beginRegion="Bracket" />+			<DetectChar char="]" attribute="Normal Text" context="#stay" endRegion="Bracket" />+			<!-- Raw identifier prefix -->+			<RegExpr String="r#(?=&rustIdent;)" attribute="Raw Identifier" context="#stay"/>+			<AnyChar String=";,.@~:$?=&gt;&lt;&amp;-+|*!/^%" attribute="Symbol" context="#stay"/> 			<DetectIdentifier/> 		</context> 		<context attribute="Attribute" lineEndContext="#stay" name="Attribute">@@ -297,28 +408,30 @@ 		</context> 		<context attribute="Definition" lineEndContext="#stay" name="Function"> 			<DetectSpaces/>-			<DetectChar char="(" attribute="Normal Text" context="#pop"/>-			<DetectChar char="&lt;" attribute="Normal Text" context="#pop"/>+			<DetectChar char="(" attribute="Normal Text" context="#pop" lookAhead="true"/>+			<DetectChar char="&lt;" attribute="Normal Text" context="#pop" lookAhead="true"/>+			<IncludeRules context="FindComments"/> 		</context> 		<context attribute="Definition" lineEndContext="#stay" name="Type"> 			<DetectSpaces/>-			<DetectChar char="=" attribute="Normal Text" context="#pop"/>-			<DetectChar char="&lt;" attribute="Normal Text" context="#pop"/>-			<DetectChar char=";" attribute="Normal Text" context="#pop"/>+			<DetectChar char="=" attribute="Normal Text" context="#pop" lookAhead="true"/>+			<DetectChar char="&lt;" attribute="Normal Text" context="#pop" lookAhead="true"/>+			<DetectChar char=";" attribute="Normal Text" context="#pop" lookAhead="true"/>+			<IncludeRules context="FindComments"/> 		</context>-                <!-- Rustc allows strings to extend over multiple lines, and the-                only thing a backshash at end-of-line does is remove the whitespace. -->-                <context attribute="String" lineEndContext="#stay" name="String">-                        <DetectChar char="\" attribute="CharEscape" context="CharEscapeWithUnicode"/>-                        <DetectChar attribute="String" context="#pop" char="&quot;"/>-                </context>+		<!-- Rustc allows strings to extend over multiple lines, and the+		     only thing a backshash at end-of-line does is remove the whitespace. -->+		<context attribute="String" lineEndContext="#stay" name="String">+			<DetectChar char="\" attribute="CharEscape" context="CharEscapeWithUnicode"/>+			<DetectChar attribute="String" context="#pop" char="&quot;"/>+		</context> 		<context attribute="String" lineEndContext="#stay" name="ByteString"> 			<DetectChar char="\" attribute="CharEscape" context="CharEscape"/> 			<DetectChar attribute="String" context="#pop" char="&quot;"/> 		</context> 		<context attribute="String" lineEndContext="#stay" name="RawString" dynamic="true"> 			<RegExpr String="&quot;%1" attribute="String" context="#pop" dynamic="true"/>-		</context>		+		</context> 		<context attribute="Character" lineEndContext="#pop" name="Character" fallthrough="true" fallthroughContext="#pop"> 			<RegExpr String="[^&apos;\\](?=&apos;)" attribute="Character" context="#stay"/> 			<RegExpr String="\\(&unicodeEscape;|&commonEscape;)(?=&apos;)" attribute="CharEscape" context="#stay"/>@@ -333,6 +446,10 @@ 			<RegExpr String="&unicodeEscape;" attribute="CharEscape" context="#pop"/> 			<IncludeRules context="CharEscape"/> 		</context>+		<context attribute="Normal Text" lineEndContext="#stay" name="FindComments">+			<Detect2Chars char="/" char1="/" attribute="Comment" context="Commentar 1"/>+			<Detect2Chars char="/" char1="*" attribute="Comment" context="Commentar 2" beginRegion="Comment"/>+		</context> 		<context attribute="Comment" lineEndContext="#pop" name="Commentar 1"> 			<IncludeRules context="##Alerts" /> 			<IncludeRules context="##Modelines" />@@ -365,6 +482,7 @@ 		<itemData name="Symbol"       defStyleNum="dsOperator"/> 		<itemData name="Attribute"    defStyleNum="dsAttribute"/> 		<itemData name="Lifetime"     defStyleNum="dsOthers" spellChecking="0"/>+		<itemData name="Raw Identifier" defStyleNum="dsAnnotation" spellChecking="0"/> 		<itemData name="Error"        defStyleNum="dsError"/> 	</itemDatas> </highlighting>@@ -376,4 +494,4 @@ 	<keywords casesensitive="1" /> </general> </language>-+<!-- kate: replace-tabs off; -->
+ syntax/stata.xml view
@@ -0,0 +1,3223 @@+<?xml version="1.0" encoding="UTF-8"?>+<!DOCTYPE language SYSTEM "language.dtd">+<language name="Stata" version="10" kateversion="2.3" section="Scientific" extensions="*.do;*.ado;*.doh;*.DO;*.ADO;*.DOH"+ casesensitive="1" priority="5" author="Larry Radbill (Larry.Radbill gmail com)" license="LGPL" >++  <highlighting>++    <list name="graphics-options">++      <item>addlabels</item>+      <item>addlabopts</item>+      <item>addplot</item>+      <item>bar</item>+      <item>barwidth</item>+      <item>bin</item>+      <item>blabel</item>+      <item>caption</item>+      <item>center</item>+      <item>circle</item>+      <item>circle_hollow</item>+      <item>color</item>+      <item>cols</item>+      <item>combine</item>+      <item>dot</item>+      <item>draw</item>+      <item>dropline</item>+      <item>frequency</item>+      <item>grid</item>+      <item>hbar</item>+      <item>imargin</item>+      <item>labsize</item>+      <item>legend</item>+      <item>margin</item>+      <item>medthick</item>+      <item>mlabangle</item>+      <item>mlabcolor</item>+      <item>mlabel</item>+      <item>mlabgap</item>+      <item>mlabposition</item>+      <item>mlabsize</item>+      <item>mlabstyle</item>+      <item>mlabtextstyle</item>+      <item>mlabvposition</item>+      <item>msymbol</item>+      <item>name</item>+      <item>nodraw</item>+      <item>nogrid</item>+      <item>over</item>+      <item>plotregion</item>+      <item>position</item>+      <item>ring</item>+      <item>rows</item>+      <item>scale</item>+      <item>size</item>+      <item>start</item>+      <item>subtitle</item>+      <item>t1title</item>+      <item>t2title</item>+      <item>text</item>+      <item>textsize</item>+      <item>title</item>+      <item>xcommon</item>+      <item>xlabel</item>+      <item>xline</item>+      <item>xscale</item>+      <item>xsize</item>+      <item>xtitle</item>+      <item>ycommon</item>+      <item>ylabel</item>+      <item>yline</item>+      <item>yscale</item>+      <item>ysize</item>+      <item>ytitle</item>+      <item>zero</item>+    </list>++    <list name="Stata-colors">+      <item>background</item>+      <item>bg</item>+      <item>black</item>+      <item>blue</item>+      <item>bluishgray</item>+      <item>brown</item>+      <item>cranberry</item>+      <item>cyan</item>+      <item>dimgray</item>+      <item>dkgreen</item>+      <item>dknavy</item>+      <item>dkorange</item>+      <item>ebblue</item>+      <item>ebg</item>+      <item>edkblue</item>+      <item>eggshell</item>+      <item>eltblue</item>+      <item>eltgreen</item>+      <item>emerald</item>+      <item>emidblue</item>+      <item>erose</item>+      <item>fg</item>+      <item>foreground</item>+      <item>forest_green</item>+      <item>gold</item>+      <item>gray</item>+      <item>green</item>+      <item>gs</item>+      <item>khaki</item>+      <item>lavender</item>+      <item>lime</item>+      <item>ltblue</item>+      <item>ltbluishgray</item>+      <item>ltkhaki</item>+      <item>magenta</item>+      <item>maroon</item>+      <item>midblue</item>+      <item>midgreen</item>+      <item>mint</item>+      <item>navy</item>+      <item>none</item>+      <item>olive</item>+      <item>olive_teal</item>+      <item>orange</item>+      <item>orange_red</item>+      <item>pink</item>+      <item>purple</item>+      <item>red</item>+      <item>sand</item>+      <item>sandb</item>+      <item>sienna</item>+      <item>stone</item>+      <item>teal</item>+      <item>white</item>+      <item>yellow</item>+    </list>++    <list name="proc-options">+      <item>accum</item>+      <item>as</item>+      <item>ascending</item>+      <item>BASE</item>+      <item>be</item>+      <item>begin</item>+      <item>bfgs</item>+      <item>bhhh</item>+      <item>brrweight</item>+      <item>clean</item>+      <item>close</item>+      <item>clpatt</item>+      <item>clpattern</item>+      <item>clwidth</item>+      <item>cole</item>+      <item>color</item>+      <item>confirm</item>+      <item>continue</item>+      <item>cov(unstr)</item>+      <item>cov(unstructured)</item>+      <item>covariance</item>+      <item>dash</item>+      <item>define</item>+      <item>deft</item>+      <item>delmacs</item>+      <item>detail</item>+      <item>dev</item>+      <item>deviations</item>+      <item>dfp</item>+      <item>difficult</item>+      <item>dirname</item>+      <item>do</item>+      <item>effects</item>+      <item>eform</item>+      <item>else</item>+      <item>emdots</item>+      <item>emiterate</item>+      <item>emlog</item>+      <item>emonly</item>+      <item>emtolerance</item>+      <item>end</item>+      <item>error</item>+      <item>estmetric</item>+      <item>exchangeable</item>+      <item>exit</item>+      <item>family</item>+      <item>fe</item>+      <item>fitted</item>+      <item>force</item>+      <item>foreach</item>+      <item>forvalues</item>+      <item>fpc</item>+      <item>frequency</item>+      <item>function</item>+      <item>global</item>+      <item>gtolerance</item>+      <item>hessian</item>+      <item>ic</item>+      <item>identity</item>+      <item>if</item>+      <item>in</item>+      <item>independent</item>+      <item>intpoints</item>+      <item>irr</item>+      <item>iterate</item>+      <item>jkrweight</item>+      <item>lincom</item>+      <item>linearized</item>+      <item>local</item>+      <item>long</item>+      <item>ltolerance</item>+      <item>macro</item>+      <item>manage</item>+      <item>meff</item>+      <item>meft</item>+      <item>minimize</item>+      <item>mle</item>+      <item>mse</item>+      <item>multiplier</item>+      <item>noclear</item>+      <item>nocons</item>+      <item>noconstant</item>+      <item>nodots</item>+      <item>nofetable</item>+      <item>nogroup</item>+      <item>noheader</item>+      <item>nolog</item>+      <item>nolrtest</item>+      <item>none</item>+      <item>nonrtolerance</item>+      <item>noobs</item>+      <item>noomit</item>+      <item>noretable</item>+      <item>nostderr</item>+      <item>not</item>+      <item>nr</item>+      <item>of</item>+      <item>offset</item>+      <item>or</item>+      <item>p</item>+      <item>parse</item>+      <item>patterns</item>+      <item>poststrata</item>+      <item>postweight</item>+      <item>prefix</item>+      <item>program</item>+      <item>r2_p</item>+      <item>reffects</item>+      <item>reml</item>+      <item>reset</item>+      <item>resid</item>+      <item>run</item>+      <item>scale</item>+      <item>shift</item>+      <item>showstep</item>+      <item>SITE</item>+      <item>size</item>+      <item>star</item>+      <item>stats</item>+      <item>STBPLUS</item>+      <item>stfmt</item>+      <item>store</item>+      <item>strata</item>+      <item>syntax</item>+      <item>tempfile</item>+      <item>tempname</item>+      <item>tempvar</item>+      <item>tokenize</item>+      <item>tolerance</item>+      <item>unstructured</item>+      <item>until</item>+      <item>UPDATES</item>+      <item>weight</item>+      <item>while</item>+      <item>wide</item>+      <item>window</item>+      <item>x2</item>+      <item>xb</item>++      <item>_b[</item>+      <item>_coeff[</item>++      <item>ereturn</item>+      <item>rreturn</item>+      <item>sreturn</item>++      <item>e(</item>+      <item>r(</item>+      <item>s(</item>+    </list>++    <list name="macro-extended-functions">+      <item>all</item>+      <item>BASE</item>+      <item>coleq</item>+      <item>colfullnames</item>+      <item>coln</item>+      <item>colnames</item>+      <item>constraint</item>+      <item>data</item>+      <item>dir</item>+      <item>display</item>+      <item>environment</item>+      <item>format</item>+      <item>l</item>+      <item>label</item>+      <item>length</item>+      <item>list</item>+      <item>nobreak</item>+      <item>nofail</item>+      <item>permname</item>+      <item>PERSONAL</item>+      <item>piece</item>+      <item>PLUS</item>+      <item>quoted</item>+      <item>row</item>+      <item>roweq</item>+      <item>rowfullnames</item>+      <item>rown</item>+      <item>rownames</item>+      <item>SITE</item>+      <item>sortedby</item>+      <item>STATA</item>+      <item>strict</item>+      <item>sysdir</item>+      <item>tempfile</item>+      <item>tempvar</item>+      <item>tsnorm</item>+      <item>UPDATES</item>+      <item>value</item>+      <item>variable</item>+    </list>++    <list name="Internal-Stata-commands">+      <item>allstring</item>+      <item>append</item>+      <item>args</item>+      <item>aweight</item>+      <item>born</item>+      <item>by</item>+      <item>bys</item>+      <item>bysort</item>+      <item>byte</item>+      <item>capture</item>+      <item>cfreq</item>+      <item>clear</item>+      <item>Cns</item>+      <item>Co</item>+      <item>collinear</item>+      <item>columns</item>+      <item>comma</item>+      <item>compress</item>+      <item>connect</item>+      <item>console</item>+      <item>cpercent</item>+      <item>cr</item>+      <item>d0</item>+      <item>data</item>+      <item>datestring</item>+      <item>decode</item>+      <item>delimit</item>+      <item>depnames</item>+      <item>desc</item>+      <item>describe</item>+      <item>di</item>+      <item>diparm_options</item>+      <item>display</item>+      <item>double</item>+      <item>drop</item>+      <item>eclass</item>+      <item>encode</item>+      <item>esample</item>+      <item>Ev</item>+      <item>exec</item>+      <item>fam</item>+      <item>fdadescribe</item>+      <item>fdasave</item>+      <item>fdause</item>+      <item>filefilter</item>+      <item>float</item>+      <item>format</item>+      <item>fweight</item>+      <item>gen</item>+      <item>generate</item>+      <item>gr</item>+      <item>green</item>+      <item>gradient</item>+      <item>hold</item>+      <item>include</item>+      <item>insert</item>+      <item>insheet</item>+      <item>int</item>+      <item>iweight</item>+      <item>k</item>+      <item>keep</item>+      <item>label</item>+      <item>Ld</item>+      <item>link</item>+      <item>load</item>+      <item>long</item>+      <item>longstub</item>+      <item>macrolen</item>+      <item>markout</item>+      <item>marksample</item>+      <item>maximize</item>+      <item>meanonly</item>+      <item>mlmatsbysum</item>+      <item>mlout</item>+      <item>mode</item>+      <item>model</item>+      <item>more</item>+      <item>N</item>+      <item>namelen</item>+      <item>noextend</item>+      <item>nofootnote</item>+      <item>noi</item>+      <item>noisily</item>+      <item>nolabel</item>+      <item>nonotes</item>+      <item>nopreserve</item>+      <item>norescale</item>+      <item>noscvars</item>+      <item>nosummary</item>+      <item>nototal</item>+      <item>nrtolerance</item>+      <item>obs</item>+      <item>odbc</item>+      <item>off</item>+      <item>oim</item>+      <item>on</item>+      <item>oneway</item>+      <item>opg</item>+      <item>order</item>+      <item>outfile</item>+      <item>outsheet</item>+      <item>percent</item>+      <item>permanently</item>+      <item>post</item>+      <item>postclose</item>+      <item>postfile</item>+      <item>preserve</item>+      <item>Psi</item>+      <item>pweight</item>+      <item>query</item>+      <item>qui</item>+      <item>quietly</item>+      <item>rawsum</item>+      <item>red</item>+      <item>ren</item>+      <item>rename</item>+      <item>replace</item>+      <item>Replay</item>+      <item>report</item>+      <item>repost</item>+      <item>restore</item>+      <item>robust</item>+      <item>save</item>+      <item>saving</item>+      <item>SD</item>+      <item>SE</item>+      <item>search</item>+      <item>set</item>+      <item>shownrtolerance</item>+      <item>sort</item>+      <item>sqlfile</item>+      <item>sqlshow</item>+      <item>STATA</item>+      <item>statistics</item>+      <item>sum</item>+      <item>summarize</item>+      <item>t1title</item>+      <item>t2title</item>+      <item>tab</item>+      <item>tabulate</item>+      <item>technique</item>+      <item>timer</item>+      <item>total</item>+      <item>unhold</item>+      <item>unique</item>+      <item>uniquemaster</item>+      <item>uniqusing</item>+      <item>use</item>+      <item>using</item>+      <item>V</item>+      <item>values</item>+      <item>variable</item>+      <item>varlist</item>+      <item>VCE</item>+      <item>waldtest</item>+      <item>width</item>+      <item>xlabel</item>+      <item>xmlsave</item>+      <item>xmluse</item>+      <item>yellow</item>+      <item>ylabel</item>+      <item>yline</item>+    </list>++  <!-- functions and constants -->++    <list name="math-functions">+      <item>abs</item>+      <item>acos</item>+      <item>asin</item>+      <item>atan</item>+      <item>atan2</item>+      <item>atanh</item>+      <item>ceil</item>+      <item>cloglog</item>+      <item>comb</item>+      <item>cos</item>+      <item>digamma</item>+      <item>exp</item>+      <item>floor</item>+      <item>invcloglog</item>+      <item>invlogit</item>+      <item>ln</item>+      <item>lnfact</item>+      <item>lnfactorial</item>+      <item>lngamma</item>+      <item>log</item>+      <item>log10</item>+      <item>max</item>+      <item>min</item>+      <item>mod</item>+      <item>reldif</item>+      <item>round</item>+      <item>sign</item>+      <item>sin</item>+      <item>sqrt</item>+      <item>sum</item>+      <item>tan</item>+      <item>tanh</item>+      <item>trigamma</item>+      <item>trunc</item>+    </list>++    <list name="probability-functions">+      <item>betaden</item>+      <item>Binomial</item>+      <item>binorm</item>+      <item>binormal</item>+      <item>chi2</item>+      <item>chi2tail</item>+      <item>dgammapda</item>+      <item>dgammapdada</item>+      <item>dgammapdadx</item>+      <item>dgammapdx</item>+      <item>dgammapdxdx</item>+      <item>F</item>+      <item>Fden</item>+      <item>Ftail</item>+      <item>gammaden</item>+      <item>gammap</item>+      <item>ibeta</item>+      <item>invbinomial</item>+      <item>invchi2</item>+      <item>invchi2tail</item>+      <item>invF</item>+      <item>invFtail</item>+      <item>invgammap</item>+      <item>invibeta</item>+      <item>invnchi2</item>+      <item>invnFtail</item>+      <item>invnibeta</item>+      <item>invnorm</item>+      <item>invnormal</item>+      <item>invttail</item>+      <item>nbetaden</item>+      <item>nchi2</item>+      <item>nFden</item>+      <item>nFtail</item>+      <item>nibeta</item>+      <item>norm</item>+      <item>normal</item>+      <item>normalden</item>+      <item>normd</item>+      <item>npnchi2</item>+      <item>tden</item>+      <item>ttail</item>+      <item>uniform()</item>+    </list>++    <list name="string-functions">+      <item>abbrev</item>+      <item>char</item>+      <item>index</item>+      <item>indexnot</item>+      <item>length</item>+      <item>lower</item>+      <item>ltrim</item>+      <item>match</item>+      <item>plural</item>+      <item>proper</item>+      <item>real</item>+      <item>regexm</item>+      <item>regexr</item>+      <item>regexs</item>+      <item>reverse</item>+      <item>rtrim</item>+      <item>string</item>+      <item>strlen</item>+      <item>strlower</item>+      <item>strltrim</item>+      <item>strmatch</item>+      <item>strofreal</item>+      <item>strpos</item>+      <item>strproper</item>+      <item>strreverse</item>+      <item>strrtrim</item>+      <item>strtrim</item>+      <item>strupper</item>+      <item>subinstr</item>+      <item>subinword</item>+      <item>substr</item>+      <item>trim</item>+      <item>upper</item>+      <item>word</item>+      <item>wordcount</item>+    </list>++    <list name="programming-functions">+      <item>_caller</item>+      <item>autocode</item>+      <item>byteorder</item>+      <item>chop</item>+      <item>clip</item>+      <item>cond</item>+      <item>e</item>+      <item>epsdouble</item>+      <item>epsfloat</item>+      <item>group</item>+      <item>inlist</item>+      <item>inrange</item>+      <item>irecode</item>+      <item>matrix</item>+      <item>maxbyte</item>+      <item>maxdouble</item>+      <item>maxfloat</item>+      <item>maxint</item>+      <item>maxlong</item>+      <item>mi</item>+      <item>minbyte</item>+      <item>mindouble</item>+      <item>minfloat</item>+      <item>minint</item>+      <item>minlong</item>+      <item>missing</item>+      <item>r</item>+      <item>recode</item>+      <item>replay</item>+      <item>return</item>+      <item>s</item>+      <item>scalar</item>+    </list>++    <list name="date-functions">+      <item>d</item>+      <item>date</item>+      <item>day</item>+      <item>dow</item>+      <item>doy</item>+      <item>halfyear</item>+      <item>mdy</item>+      <item>month</item>+      <item>quarter</item>+      <item>week</item>+      <item>year</item>+    </list>++    <list name="timeseries-functions">+      <item>d</item>+      <item>daily</item>+      <item>dofd</item>+      <item>dofh</item>+      <item>dofm</item>+      <item>dofq</item>+      <item>dofw</item>+      <item>dofy</item>+      <item>h</item>+      <item>halfyearly</item>+      <item>hofd</item>+      <item>m</item>+      <item>mofd</item>+      <item>monthly</item>+      <item>q</item>+      <item>qofd</item>+      <item>quarterly</item>+      <item>tin</item>+      <item>twithin</item>+      <item>w</item>+      <item>weekly</item>+      <item>wofd</item>+      <item>y</item>+      <item>yearly</item>+      <item>yh</item>+      <item>ym</item>+      <item>yofd</item>+      <item>yq</item>+      <item>yw</item>+    </list>++    <list name="matrix-functions">+      <item>cholesky</item>+      <item>colnumb</item>+      <item>colsof</item>+      <item>corr</item>+      <item>det</item>+      <item>diag</item>+      <item>diag0cnt</item>+      <item>el</item>+      <item>get</item>+      <item>hadamard</item>+      <item>I</item>+      <item>inv</item>+      <item>invsym</item>+      <item>issym</item>+      <item>issymmetric</item>+      <item>J</item>+      <item>matmissing</item>+      <item>matuniform</item>+      <item>mreldif</item>+      <item>nullmat</item>+      <item>rownumb</item>+      <item>rowsof</item>+      <item>sweep</item>+      <item>syminv</item>+      <item>trace</item>+      <item>vec</item>+      <item>vecdiag</item>+    </list>++    <list name="egen-functions">+      <item>anycount</item>+      <item>anymatch</item>+      <item>anyvalue</item>+      <item>at</item>+      <item>concat</item>+      <item>count</item>+      <item>cut</item>+      <item>diff</item>+      <item>ends</item>+      <item>field</item>+      <item>fill</item>+      <item>group</item>+      <item>groupicodes</item>+      <item>head</item>+      <item>iqr</item>+      <item>kurt</item>+      <item>label</item>+      <item>last</item>+      <item>lname</item>+      <item>mad</item>+      <item>max</item>+      <item>maxlength</item>+      <item>maxmode</item>+      <item>mdev</item>+      <item>mean</item>+      <item>median</item>+      <item>min</item>+      <item>minmode</item>+      <item>missing</item>+      <item>mode</item>+      <item>mtr</item>+      <item>nummodemissing</item>+      <item>pc</item>+      <item>prop</item>+      <item>pctile</item>+      <item>punct</item>+      <item>rank</item>+      <item>rowfirst</item>+      <item>rowlast</item>+      <item>rowmax</item>+      <item>rowmean</item>+      <item>rowmin</item>+      <item>rowmiss</item>+      <item>rownonmiss</item>+      <item>rowsd</item>+      <item>rowtotal</item>+      <item>sd</item>+      <item>seq</item>+      <item>skew</item>+      <item>std</item>+      <item>strok</item>+      <item>tag</item>+      <item>tail</item>+      <item>total</item>+      <item>track</item>+      <item>trim</item>+      <item>truncate</item>+    </list>++    <list name="constants">+      <item>_all</item>+      <item>_column</item>+      <item>_cons</item>+      <item>_dta</item>+      <item>_dup</item>+      <item>_merge</item>+      <item>_n</item>+      <item>_newline</item>+      <item>_pi</item>+      <item>_rc</item>+      <item>creturn</item>+      <item>c(adopath)</item>+      <item>c(adosize)</item>+      <item>c(ALPHA)</item>+      <item>c(born_date)</item>+      <item>c(byteorder)</item>+      <item>c(changed)</item>+      <item>c(checksum)</item>+      <item>c(cmdlen)</item>+      <item>c(console)</item>+      <item>c(copycolor)</item>+      <item>c(current_date)</item>+      <item>c(current_time)</item>+      <item>c(dirsep)</item>+      <item>c(dockable)</item>+      <item>c(dockingguides)</item>+      <item>c(dp)</item>+      <item>c(epsdouble)</item>+      <item>c(epsfloat)</item>+      <item>c(filedate)</item>+      <item>c(filename)</item>+      <item>c(flavor)</item>+      <item>c(graphics)</item>+      <item>c(httpproxy)</item>+      <item>c(httpproxyauth)</item>+      <item>c(httpproxyhost)</item>+      <item>c(httpproxyport)</item>+      <item>c(httpproxypw)</item>+      <item>c(httpproxyuser)</item>+      <item>c(k)</item>+      <item>c(level)</item>+      <item>c(linegap)</item>+      <item>c(linesize)</item>+      <item>c(locksplitters)</item>+      <item>c(logtype)</item>+      <item>c(machine_type)</item>+      <item>c(macrolen)</item>+      <item>c(matacache)</item>+      <item>c(matafavor)</item>+      <item>c(matalibs)</item>+      <item>c(matalnum)</item>+      <item>c(matamofirst)</item>+      <item>c(mataoptimize)</item>+      <item>c(matastrict)</item>+      <item>c(matsize)</item>+      <item>c(max_cmdlen)</item>+      <item>c(max_k_current)</item>+      <item>c(max_k_theory)</item>+      <item>c(max_macrolen)</item>+      <item>c(max_matsize)</item>+      <item>c(max_N_current)</item>+      <item>c(max_N_theory)</item>+      <item>c(max_width_current)</item>+      <item>c(max_width_theory)</item>+      <item>c(maxbyte)</item>+      <item>c(maxdb)</item>+      <item>c(maxdouble)</item>+      <item>c(maxfloat)</item>+      <item>c(maxint)</item>+      <item>c(maxiter)</item>+      <item>c(maxlong)</item>+      <item>c(maxstrvarlen)</item>+      <item>c(maxvar)</item>+      <item>c(memory)</item>+      <item>c(min_matsize)</item>+      <item>c(minbyte)</item>+      <item>c(mindouble)</item>+      <item>c(minfloat)</item>+      <item>c(minint)</item>+      <item>c(minlong)</item>+      <item>c(mode)</item>+      <item>c(Mons)</item>+      <item>c(Months)</item>+      <item>c(more)</item>+      <item>c(N)</item>+      <item>c(namelen)</item>+      <item>c(os)</item>+      <item>c(osdtl)</item>+      <item>c(pagesize)</item>+      <item>c(persistfv)</item>+      <item>c(persistvtopic)</item>+      <item>c(pi)</item>+      <item>c(printcolor)</item>+      <item>c(pwd)</item>+      <item>c(rc)</item>+      <item>c(reventries)</item>+      <item>c(rmsg_time)</item>+      <item>c(rmsg)</item>+      <item>c(scheme)</item>+      <item>c(scrollbufsize)</item>+      <item>c(SE)</item>+      <item>c(searchdefault)</item>+      <item>c(seed)</item>+      <item>c(stata_version)</item>+      <item>c(sysdir_base)</item>+      <item>c(sysdir_oldplace)</item>+      <item>c(sysdir_personal)</item>+      <item>c(sysdir_plus)</item>+      <item>c(sysdir_site)</item>+      <item>c(sysdir_stata)</item>+      <item>c(sysdir_updates)</item>+      <item>c(timeout1)</item>+      <item>c(timeout2)</item>+      <item>c(trace)</item>+      <item>c(tracedepth)</item>+      <item>c(traceexpand)</item>+      <item>c(tracehilite)</item>+      <item>c(traceindent)</item>+      <item>c(tracenumber)</item>+      <item>c(tracesep)</item>+      <item>c(type)</item>+      <item>c(update_interval)</item>+      <item>c(update_prompt)</item>+      <item>c(update_query)</item>+      <item>c(varabbrev)</item>+      <item>c(varlabelpos)</item>+      <item>c(version)</item>+      <item>c(virtual)</item>+      <item>c(Wdays)</item>+      <item>c(Weekdays)</item>+      <item>c(width)</item>+      <item>c(xptheme)</item>+    </list>++    <list name="System-parameters">+      <item>adosize</item>+      <item>checksum</item>+      <item>copycolor</item>+      <item>dockable</item>+      <item>dockingguides</item>+      <item>dp</item>+      <item>graphics</item>+      <item>httpproxy</item>+      <item>httpproxyauth</item>+      <item>httpproxyhost</item>+      <item>httpproxyport</item>+      <item>httpproxypw</item>+      <item>httpproxyuser</item>+      <item>level</item>+      <item>linegap</item>+      <item>linesize</item>+      <item>locksplitters</item>+      <item>logtype</item>+      <item>matacache</item>+      <item>matafavor</item>+      <item>matalibs</item>+      <item>matalnum</item>+      <item>matamofirst</item>+      <item>mataoptimize</item>+      <item>matastrict</item>+      <item>matsize</item>+      <item>maxdb</item>+      <item>maxiter</item>+      <item>maxvar</item>+      <item>memory</item>+      <item>more</item>+      <item>pagesize</item>+      <item>persistfv</item>+      <item>persistvtopic</item>+      <item>printcolor</item>+      <item>reventries</item>+      <item>rmsg</item>+      <item>scheme</item>+      <item>scrollbufsize</item>+      <item>searchdefault</item>+      <item>seed</item>+      <item>timeout1</item>+      <item>timeout2</item>+      <item>trace</item>+      <item>tracedepth</item>+      <item>traceexpand</item>+      <item>tracehilite</item>+      <item>traceindent</item>+      <item>tracenumber</item>+      <item>tracesep</item>+      <item>type</item>+      <item>update_interval</item>+      <item>update_prompt</item>+      <item>update_query</item>+      <item>varabbrev</item>+      <item>varlabelpos</item>+      <item>version</item>+      <item>virtual</item>+      <item>xptheme</item>+    </list>++  <!-- stata ado files   version 9.0    Date: 05/05/2005 -->+    <list name="procedures">+      <item>_a_cls_msg</item>+      <item>_addgph</item>+      <item>_assert</item>+      <item>_assert_mreldif</item>+      <item>_assert_mreldifp</item>+      <item>_assert_mreldifs</item>+      <item>_assert_obs</item>+      <item>_assert_streq</item>+      <item>_at</item>+      <item>_bigtab</item>+      <item>_binperfect</item>+      <item>_binperfout</item>+      <item>_biplotmat</item>+      <item>_brr_sum</item>+      <item>_bs_display</item>+      <item>_bs_sum</item>+      <item>_btcmd</item>+      <item>_byoptnotallowed</item>+      <item>_ca_parse_normalize</item>+      <item>_callerr</item>+      <item>_cci</item>+      <item>_check_eformopt</item>+      <item>_check4gropts</item>+      <item>_choice_table</item>+      <item>_ckirfset</item>+      <item>_cknotsvaroi</item>+      <item>_ckvec</item>+      <item>_clsarr2list</item>+      <item>_cmdxel</item>+      <item>_coef_table</item>+      <item>_coef_table_header</item>+      <item>_confirm_date</item>+      <item>_confirm_number_or_date</item>+      <item>_copy_mat_stripes</item>+      <item>_cpmatnm</item>+      <item>_crc2use</item>+      <item>_crc4fld</item>+      <item>_crcacnt</item>+      <item>_crcar1</item>+      <item>_crcause</item>+      <item>_crcbin</item>+      <item>_crcbygr</item>+      <item>_crcchi2</item>+      <item>_crcchkw</item>+      <item>_crccip</item>+      <item>_crceprs</item>+      <item>_crcgldv</item>+      <item>_crcglil</item>+      <item>_crcird</item>+      <item>_crcirr</item>+      <item>_crcmeq</item>+      <item>_crcnuse</item>+      <item>_crcor</item>+      <item>_crcphdr</item>+      <item>_crcra</item>+      <item>_crcrd</item>+      <item>_crcrr</item>+      <item>_crcseq</item>+      <item>_crcshdr</item>+      <item>_crcslbl</item>+      <item>_crcsrvc</item>+      <item>_crcswxx</item>+      <item>_crcunab</item>+      <item>_crcunit</item>+      <item>_crcvarl</item>+      <item>_crcwsrv</item>+      <item>_crczsku</item>+      <item>_cvar</item>+      <item>_date2elapsed</item>+      <item>_diag2mat</item>+      <item>_diparm</item>+      <item>_diparm_8</item>+      <item>_dots</item>+      <item>_e2r</item>+      <item>_egennoby</item>+      <item>_evlist</item>+      <item>_exp_list_expand</item>+      <item>_exp_list_parse</item>+      <item>_find_tsops</item>+      <item>_fr_area_parse_and_log</item>+      <item>_fr_aspect_parse_and_log</item>+      <item>_fr_draw_rect</item>+      <item>_fr_droplines_draw</item>+      <item>_fr_erasearr</item>+      <item>_fr_legend_parse_and_log</item>+      <item>_fr_merged_implicit</item>+      <item>_fr_runlog</item>+      <item>_fr_sztextbox_parse_and_log</item>+      <item>_fr_tbstyle_parse_and_log</item>+      <item>_fr_tedits_parse_and_log</item>+      <item>_fr_textbox_parse_and_log</item>+      <item>_fr_title_parse_and_log</item>+      <item>_fr_x_log_cleanup</item>+      <item>_fr_x_log_create</item>+      <item>_fracpp</item>+      <item>_fracxo</item>+      <item>_frr_sztextbox_pnl</item>+      <item>_gany</item>+      <item>_ganycount</item>+      <item>_ganymatch</item>+      <item>_ganyvalue</item>+      <item>_gconcat</item>+      <item>_gcount</item>+      <item>_gcut</item>+      <item>_gdiff</item>+      <item>_gends</item>+      <item>_geqany</item>+      <item>_get_diparmopts</item>+      <item>_get_diparmopts_8</item>+      <item>_get_eformopts</item>+      <item>_get_eqspec</item>+      <item>_get_gropts</item>+      <item>_get_irf</item>+      <item>_get_offopt</item>+      <item>_getbv</item>+      <item>_getcovcorr</item>+      <item>_getfilename</item>+      <item>_getnewlabelname</item>+      <item>_getrhs</item>+      <item>_getvarcns</item>+      <item>_getxel</item>+      <item>_getxel2</item>+      <item>_gfill</item>+      <item>_ggroup</item>+      <item>_giqr</item>+      <item>_gkurt</item>+      <item>_gm_edit</item>+      <item>_gm_log</item>+      <item>_gma</item>+      <item>_gmad</item>+      <item>_gmax</item>+      <item>_gmdev</item>+      <item>_gmean</item>+      <item>_gmedian</item>+      <item>_gmin</item>+      <item>_gmode</item>+      <item>_gmtr</item>+      <item>_gneqany</item>+      <item>_gpc</item>+      <item>_gpctile</item>+      <item>_gr_arrowhead</item>+      <item>_gr_atomize_styles</item>+      <item>_gr_common_axes</item>+      <item>_gr_drawrect</item>+      <item>_gr_linkstyles</item>+      <item>_gr_symbol_of</item>+      <item>_grank</item>+      <item>_grfirst</item>+      <item>_grlast</item>+      <item>_grmax</item>+      <item>_grmean</item>+      <item>_grmin</item>+      <item>_grmiss</item>+      <item>_grobs</item>+      <item>_growfirst</item>+      <item>_growlast</item>+      <item>_growmax</item>+      <item>_growmean</item>+      <item>_growmin</item>+      <item>_growmiss</item>+      <item>_grownonmiss</item>+      <item>_growsd</item>+      <item>_growtotal</item>+      <item>_grsd</item>+      <item>_grsum</item>+      <item>_gs_addgrname</item>+      <item>_gs_bygraph</item>+      <item>_gs_clean_graphlist</item>+      <item>_gs_default_bands</item>+      <item>_gs_islivefile</item>+      <item>_gs_parse_and_log_axoptions</item>+      <item>_gs_parse_and_log_axtitle</item>+      <item>_gs_parse_and_log_lines</item>+      <item>_gs_parse_and_log_tickset</item>+      <item>_gs_rdfilehdr</item>+      <item>_gs_wrfilehdr</item>+      <item>_gs_x_create</item>+      <item>_gsd</item>+      <item>_gseq</item>+      <item>_gskew</item>+      <item>_gstd</item>+      <item>_gsum</item>+      <item>_gtag</item>+      <item>_gtotal</item>+      <item>_hadamard_verify</item>+      <item>_hw_comp</item>+      <item>_hw_opt_d0</item>+      <item>_hwsa_comp</item>+      <item>_hwsa_opt_d0</item>+      <item>_hwsm_comp</item>+      <item>_hwsm_opt_d0</item>+      <item>_isfit</item>+      <item>_ivreg_project</item>+      <item>_jk_nlegend</item>+      <item>_jk_pseudo</item>+      <item>_jk_sum</item>+      <item>_labels2names</item>+      <item>_linemax</item>+      <item>_loop_brr</item>+      <item>_loop_jknife</item>+      <item>_loop_jknife_fw</item>+      <item>_loop_jknife_iw</item>+      <item>_loop_jknife2</item>+      <item>_loop_rw</item>+      <item>_lrtest7</item>+      <item>_m2matrix</item>+      <item>_m2scalar</item>+      <item>_matplot</item>+      <item>_matsort</item>+      <item>_mdisplay</item>+      <item>_mds_classical</item>+      <item>_mds_dataheader</item>+      <item>_mds_display</item>+      <item>_mds_display_classical</item>+      <item>_mds_euclidean</item>+      <item>_mds_parse_dopts</item>+      <item>_mds_parse_method</item>+      <item>_mds_parse_s2d</item>+      <item>_mds_s2d</item>+      <item>_me_der</item>+      <item>_me_der2</item>+      <item>_me_derb</item>+      <item>_me_derd</item>+      <item>_me_l_der</item>+      <item>_me_l_der2</item>+      <item>_mfrmvec</item>+      <item>_mka2</item>+      <item>_mkg</item>+      <item>_mkkmn</item>+      <item>_mksigma</item>+      <item>_mkvec</item>+      <item>_mprobitestimator</item>+      <item>_mtest</item>+      <item>_mvec</item>+      <item>_no_estat</item>+      <item>_no_predict</item>+      <item>_nobs</item>+      <item>_on_colon_parse</item>+      <item>_parmlist</item>+      <item>_parse_optexp</item>+      <item>_parsewt</item>+      <item>_pk_p</item>+      <item>_plotpos</item>+      <item>_pred_me</item>+      <item>_pred_se</item>+      <item>_prefix_check4esample</item>+      <item>_prefix_checkopt</item>+      <item>_prefix_clear</item>+      <item>_prefix_command</item>+      <item>_prefix_display</item>+      <item>_prefix_expand</item>+      <item>_prefix_explist</item>+      <item>_prefix_footnote</item>+      <item>_prefix_getchars</item>+      <item>_prefix_getmat</item>+      <item>_prefix_legend</item>+      <item>_prefix_mlogit</item>+      <item>_prefix_model_test</item>+      <item>_prefix_note</item>+      <item>_prefix_reject</item>+      <item>_prefix_relabel_eqns</item>+      <item>_prefix_run_error</item>+      <item>_prefix_saving</item>+      <item>_prefix_title</item>+      <item>_prefix_vcenotallowed</item>+      <item>_qsort_index</item>+      <item>_qsur</item>+      <item>_r2e</item>+      <item>_repost</item>+      <item>_resample_warn</item>+      <item>_restore_labels</item>+      <item>_returnclear</item>+      <item>_rmdcoll</item>+      <item>_robust2</item>+      <item>_roccom1</item>+      <item>_roccom1_8</item>+      <item>_rocsen</item>+      <item>_rotate_clear</item>+      <item>_rotate_text</item>+      <item>_score_spec</item>+      <item>_set_irf_vars</item>+      <item>_shortenpath</item>+      <item>_sigfm</item>+      <item>_small2dotz</item>+      <item>_stata_internalerror</item>+      <item>_stcurv</item>+      <item>_strip_labels</item>+      <item>_sttrend</item>+      <item>_stubstar2names</item>+      <item>_sum_table</item>+      <item>_sumaccum</item>+      <item>_sunflower_binar</item>+      <item>_svar_cnsmac</item>+      <item>_svar_eqmac</item>+      <item>_svar_newcns</item>+      <item>_svar_post</item>+      <item>_svard2</item>+      <item>_svariden</item>+      <item>_svaridenlr</item>+      <item>_svarlrd2</item>+      <item>_svd</item>+      <item>_svy_check_cmdopts</item>+      <item>_svy_check_fpc</item>+      <item>_svy_check_postw</item>+      <item>_svy_check_predict</item>+      <item>_svy_check_vce</item>+      <item>_svy_fpc_note</item>+      <item>_svy_ftest</item>+      <item>_svy_ivreg_first</item>+      <item>_svy_mkdeff</item>+      <item>_svy_mkmeff</item>+      <item>_svy_mkvmsp</item>+      <item>_svy_mkvsrs</item>+      <item>_svy_newrule</item>+      <item>_svy_setup</item>+      <item>_svy_singleton_note</item>+      <item>_svy_subpop</item>+      <item>_svy_subpop_note</item>+      <item>_svy_summarize</item>+      <item>_svy_summarize_legend</item>+      <item>_svy_tabulate</item>+      <item>_svy2</item>+      <item>_svydes_dlg</item>+      <item>_svylc</item>+      <item>_svyset</item>+      <item>_sw_ood</item>+      <item>_ts</item>+      <item>_ts_dexp</item>+      <item>_ts_exp</item>+      <item>_ts_hw</item>+      <item>_ts_hwsa</item>+      <item>_ts_hwsm</item>+      <item>_tsheadr</item>+      <item>_tsinchk</item>+      <item>_tsma</item>+      <item>_ttest</item>+      <item>_ttest1</item>+      <item>_ttest2</item>+      <item>_tutends</item>+      <item>_var_mka</item>+      <item>_varbsf</item>+      <item>_vardisprmse</item>+      <item>_varfcast</item>+      <item>_varfcast_clear</item>+      <item>_varfcast_fcast</item>+      <item>_varfcast_graph</item>+      <item>_varirf</item>+      <item>_varsim</item>+      <item>_vce_parserun</item>+      <item>_vec_ckgraph</item>+      <item>_vec_dreduced</item>+      <item>_vec_grcroots</item>+      <item>_vec_opck</item>+      <item>_vec_pgparse</item>+      <item>_vec_pgridplots</item>+      <item>_vec_postvar</item>+      <item>_vecauxdisp</item>+      <item>_vecfcast_compute</item>+      <item>_vecfcast_compute_w</item>+      <item>_vecgetacns</item>+      <item>_vecgetcv</item>+      <item>_vecgtn</item>+      <item>_vecmka</item>+      <item>_vecmkapvp</item>+      <item>_vecmkce</item>+      <item>_vecmkgam</item>+      <item>_vecmksi</item>+      <item>_vecmktrend</item>+      <item>_vecortho</item>+      <item>_vecpclean</item>+      <item>_vectparse</item>+      <item>_vecu</item>+      <item>_virf_add</item>+      <item>_virf_char</item>+      <item>_virf_fck</item>+      <item>_virf_mknewfile</item>+      <item>_virf_nlen</item>+      <item>_virf_use</item>+      <item>_writenum</item>+      <item>_xtreg_chk_cl</item>++      <item>ac</item>+      <item>ac_7</item>+      <item>acprplot</item>+      <item>acprplot_7</item>+      <item>adjust</item>+      <item>adopath</item>+      <item>alpha</item>+      <item>ameans</item>+      <item>anova_estat</item>+      <item>anova_terms</item>+      <item>aorder</item>+      <item>arch</item>+      <item>arch_dr</item>+      <item>arch_estat</item>+      <item>arch_p</item>+      <item>archlm</item>+      <item>areg</item>+      <item>areg_p</item>+      <item>arima</item>+      <item>arima_dr</item>+      <item>arima_estat</item>+      <item>arima_p</item>+      <item>asmprobit</item>+      <item>asmprobit_estat</item>+      <item>asmprobit_lf</item>+      <item>asmprobit_p</item>+      <item>avplot</item>+      <item>avplot_7</item>+      <item>avplots</item>+      <item>avplots_7</item>+      <item>bcskew0</item>+      <item>bgodfrey</item>+      <item>binreg</item>+      <item>bip0_lf</item>+      <item>biplot</item>+      <item>bipp_lf</item>+      <item>bipr_lf</item>+      <item>bipr_p</item>+      <item>biprobit</item>+      <item>bitest</item>+      <item>bitesti</item>+      <item>bitowt</item>+      <item>blogit</item>+      <item>bmemsize</item>+      <item>boot</item>+      <item>bootsamp</item>+      <item>bootstrap</item>+      <item>bootstrap_8</item>+      <item>boxco_l</item>+      <item>boxco_p</item>+      <item>boxcox</item>+      <item>boxcox_6</item>+      <item>boxcox_p</item>+      <item>bprobit</item>+      <item>brier</item>+      <item>brr</item>+      <item>brrstat</item>+      <item>bs</item>+      <item>bs_7</item>+      <item>bsampl_w</item>+      <item>bsample</item>+      <item>bsample_7</item>+      <item>bsqreg</item>+      <item>bstat</item>+      <item>bstat_7</item>+      <item>bstat_8</item>+      <item>bstrap</item>+      <item>bstrap_7</item>+      <item>ca</item>+      <item>ca_estat</item>+      <item>ca_p</item>+      <item>cabiplot</item>+      <item>camat</item>+      <item>canon</item>+      <item>canon_8</item>+      <item>canon_8_p</item>+      <item>canon_estat</item>+      <item>canon_p</item>+      <item>caprojection</item>+      <item>cc</item>+      <item>cchart</item>+      <item>cchart_7</item>+      <item>cci</item>+      <item>censobs_table</item>+      <item>centile</item>+      <item>cf</item>+      <item>checkdlgfiles</item>+      <item>checkhlpfiles</item>+      <item>ci</item>+      <item>cii</item>+      <item>classutil</item>+      <item>clear</item>+      <item>clo</item>+      <item>clog</item>+      <item>clog_lf</item>+      <item>clog_p</item>+      <item>clogi</item>+      <item>clogi_sw</item>+      <item>clogit</item>+      <item>clogit_lf</item>+      <item>clogit_p</item>+      <item>clogitp</item>+      <item>clogl_sw</item>+      <item>cloglog</item>+      <item>clonevar</item>+      <item>clslistarray</item>+      <item>cluster</item>+      <item>cluster_measures</item>+      <item>cluster_stop</item>+      <item>cluster_tree</item>+      <item>cluster_tree_8</item>+      <item>clustermat</item>+      <item>cnr</item>+      <item>cnre</item>+      <item>cnreg</item>+      <item>cnreg_p</item>+      <item>cnreg_sw</item>+      <item>cnsreg</item>+      <item>codebook</item>+      <item>collaps4</item>+      <item>collapse</item>+      <item>colormult_nb</item>+      <item>colormult_nw</item>+      <item>compare</item>+      <item>conren</item>+      <item>contract</item>+      <item>copyright</item>+      <item>copysource</item>+      <item>corc</item>+      <item>corr_anti</item>+      <item>corr_kmo</item>+      <item>corr_smc</item>+      <item>corr2data</item>+      <item>corrgram</item>+      <item>cox_p</item>+      <item>cox_sw</item>+      <item>coxbase</item>+      <item>coxhaz</item>+      <item>coxvar</item>+      <item>cprplot</item>+      <item>cprplot_7</item>+      <item>crc</item>+      <item>cross</item>+      <item>cs</item>+      <item>cscript</item>+      <item>cscript_log</item>+      <item>csi</item>+      <item>ct</item>+      <item>ct_is</item>+      <item>ctset</item>+      <item>ctst_5</item>+      <item>ctst_st</item>+      <item>cttost</item>+      <item>cumsp</item>+      <item>cumsp_7</item>+      <item>cumul</item>+      <item>cusum</item>+      <item>cusum_7</item>+      <item>cutil</item>++      <item>d</item>+      <item>datetof</item>+      <item>db</item>+      <item>dbeta</item>+      <item>de</item>+      <item>deff</item>+      <item>des</item>+      <item>desc</item>+      <item>descr</item>+      <item>descri</item>+      <item>describ</item>+      <item>describe</item>+      <item>destring</item>+      <item>dfbeta</item>+      <item>dfgls</item>+      <item>dfuller</item>+      <item>dirstats</item>+      <item>disp_res</item>+      <item>disp_s</item>+      <item>dotplot</item>+      <item>dotplot_7</item>+      <item>dprobit</item>+      <item>drawnorm</item>+      <item>ds</item>+      <item>ds_util</item>+      <item>dstdize</item>+      <item>duplicates</item>+      <item>durbina</item>+      <item>dwstat</item>+      <item>dydx</item>+      <item>egen</item>+      <item>eivreg</item>+      <item>emdef</item>+      <item>eq</item>+      <item>ereg</item>+      <item>ereg_lf</item>+      <item>ereg_p</item>+      <item>ereg_sw</item>+      <item>ereghet</item>+      <item>ereghet_glf</item>+      <item>ereghet_glf_sh</item>+      <item>ereghet_gp</item>+      <item>ereghet_ilf</item>+      <item>ereghet_ilf_sh</item>+      <item>ereghet_ip</item>+      <item>est</item>+      <item>est_cfexist</item>+      <item>est_cfname</item>+      <item>est_clickable</item>+      <item>est_expand</item>+      <item>est_hold</item>+      <item>est_table</item>+      <item>est_unhold</item>+      <item>est_unholdok</item>+      <item>estat</item>+      <item>estat_default</item>+      <item>estat_summ</item>+      <item>estat_vce_only</item>+      <item>esti</item>+      <item>estimates</item>+      <item>etodow</item>+      <item>etof</item>+      <item>etomdy</item>+      <item>expandcl</item>+      <item>fac</item>+      <item>fact</item>+      <item>facto</item>+      <item>factor</item>+      <item>factor_estat</item>+      <item>factor_p</item>+      <item>factor_pca_rotated</item>+      <item>factor_rotate</item>+      <item>factormat</item>+      <item>fcast</item>+      <item>fcast_compute</item>+      <item>fcast_graph</item>+      <item>fh_st</item>+      <item>fillin</item>+      <item>find_hlp_file</item>+      <item>findfile</item>+      <item>findit</item>+      <item>findit_7</item>+      <item>fit</item>+      <item>for</item>+      <item>for5_0</item>+      <item>fpredict</item>+      <item>frac_154</item>+      <item>frac_adj</item>+      <item>frac_chk</item>+      <item>frac_cox</item>+      <item>frac_ddp</item>+      <item>frac_dis</item>+      <item>frac_dv</item>+      <item>frac_in</item>+      <item>frac_mun</item>+      <item>frac_pp</item>+      <item>frac_pq</item>+      <item>frac_pv</item>+      <item>frac_wgt</item>+      <item>frac_xo</item>+      <item>fracgen</item>+      <item>fracplot</item>+      <item>fracplot_7</item>+      <item>fracpoly</item>+      <item>fracpred</item>+      <item>fron_ex</item>+      <item>fron_hn</item>+      <item>fron_p</item>+      <item>fron_tn</item>+      <item>fron_tn2</item>+      <item>frontier</item>+      <item>ftodate</item>+      <item>ftoe</item>+      <item>ftomdy</item>+      <item>ftowdate</item>++      <item>gamhet_glf</item>+      <item>gamhet_gp</item>+      <item>gamhet_ilf</item>+      <item>gamhet_ip</item>+      <item>gamma</item>+      <item>gamma_d2</item>+      <item>gamma_p</item>+      <item>gamma_sw</item>+      <item>gammahet</item>+      <item>gdi_hexagon</item>+      <item>gdi_spokes</item>+      <item>genrank</item>+      <item>genstd</item>+      <item>genvmean</item>+      <item>gladder</item>+      <item>gladder_7</item>+      <item>glim_l01</item>+      <item>glim_l02</item>+      <item>glim_l03</item>+      <item>glim_l04</item>+      <item>glim_l05</item>+      <item>glim_l06</item>+      <item>glim_l07</item>+      <item>glim_l08</item>+      <item>glim_l09</item>+      <item>glim_l10</item>+      <item>glim_l11</item>+      <item>glim_l12</item>+      <item>glim_lf</item>+      <item>glim_mu</item>+      <item>glim_nw1</item>+      <item>glim_nw2</item>+      <item>glim_nw3</item>+      <item>glim_p</item>+      <item>glim_v1</item>+      <item>glim_v2</item>+      <item>glim_v3</item>+      <item>glim_v4</item>+      <item>glim_v5</item>+      <item>glim_v6</item>+      <item>glim_v7</item>+      <item>glm</item>+      <item>glm_6</item>+      <item>glm_p</item>+      <item>glm_sw</item>+      <item>glmpred</item>+      <item>glogit</item>+      <item>glogit_8</item>+      <item>glogit_p</item>+      <item>gmeans</item>+      <item>gnbre_lf</item>+      <item>gnbreg</item>+      <item>gnbreg_5</item>+      <item>gnbreg_p</item>+      <item>gomp_lf</item>+      <item>gompe_sw</item>+      <item>gomper_p</item>+      <item>gompertz</item>+      <item>gompertzhet</item>+      <item>gomphet_glf</item>+      <item>gomphet_glf_sh</item>+      <item>gomphet_gp</item>+      <item>gomphet_ilf</item>+      <item>gomphet_ilf_sh</item>+      <item>gomphet_ip</item>+      <item>gphdot</item>+      <item>gphpen</item>+      <item>gphprint</item>+      <item>gprobi_p</item>+      <item>gprobit</item>+      <item>gprobit_8</item>+      <item>gr</item>+      <item>gr_copy</item>+      <item>gr_current</item>+      <item>gr_db</item>+      <item>gr_describe</item>+      <item>gr_dir</item>+      <item>gr_draw</item>+      <item>gr_draw_replay</item>+      <item>gr_drop</item>+      <item>gr_edit</item>+      <item>gr_editviewopts</item>+      <item>gr_example</item>+      <item>gr_example2</item>+      <item>gr_export</item>+      <item>gr_print</item>+      <item>gr_qscheme</item>+      <item>gr_query</item>+      <item>gr_read</item>+      <item>gr_rename</item>+      <item>gr_replay</item>+      <item>gr_save</item>+      <item>gr_set</item>+      <item>gr_setscheme</item>+      <item>gr_table</item>+      <item>gr_undo</item>+      <item>gr_use</item>+      <item>graph</item>+      <item>grebar</item>+      <item>greigen</item>+      <item>greigen_7</item>+      <item>greigen_8</item>+      <item>grmeanby</item>+      <item>grmeanby_7</item>+      <item>gs_fileinfo</item>+      <item>gs_filetype</item>+      <item>gs_graphinfo</item>+      <item>gs_stat</item>+      <item>gsort</item>+      <item>gwood</item>+      <item>h</item>+      <item>hadimvo</item>+      <item>hareg</item>+      <item>hausman</item>+      <item>he</item>+      <item>heck_d2</item>+      <item>heckma_p</item>+      <item>heckman</item>+      <item>heckp_lf</item>+      <item>heckpr_p</item>+      <item>heckprob</item>+      <item>hel</item>+      <item>help</item>+      <item>hereg</item>+      <item>hetpr_lf</item>+      <item>hetpr_p</item>+      <item>hetprob</item>+      <item>hettest</item>+      <item>hilite</item>+      <item>hist</item>+      <item>hist_7</item>+      <item>histogram</item>+      <item>hlogit</item>+      <item>hlu</item>+      <item>hmeans</item>+      <item>hotel</item>+      <item>hotelling</item>+      <item>hprobit</item>+      <item>hreg</item>+      <item>icd9</item>+      <item>icd9_ff</item>+      <item>icd9p</item>+      <item>iis</item>+      <item>impute</item>+      <item>imtest</item>+      <item>inbase</item>+      <item>integ</item>+      <item>inten</item>+      <item>intreg</item>+      <item>intreg_7</item>+      <item>intreg_p</item>+      <item>intrg_ll</item>+      <item>intrg_ll2</item>+      <item>intrg2_ll</item>+      <item>ipolate</item>+      <item>iqreg</item>+      <item>ir</item>+      <item>irf</item>+      <item>irf_create</item>+      <item>irfm</item>+      <item>iri</item>+      <item>is_svy</item>+      <item>is_svysum</item>+      <item>isid</item>+      <item>istdize</item>+      <item>ivprob_1_lf</item>+      <item>ivprob_lf</item>+      <item>ivprobit</item>+      <item>ivprobit_p</item>+      <item>ivreg</item>+      <item>ivreg_footnote</item>+      <item>ivtob_1_lf</item>+      <item>ivtob_lf</item>+      <item>ivtobit</item>+      <item>ivtobit_p</item>++      <item>jackknife</item>+      <item>jacknife</item>+      <item>jknife</item>+      <item>jknife_6</item>+      <item>jknife_8</item>+      <item>jkstat</item>+      <item>joinby</item>+      <item>kalarma1</item>+      <item>kap</item>+      <item>kap_3</item>+      <item>kapmeier</item>+      <item>kappa</item>+      <item>kapwgt</item>+      <item>kdensity</item>+      <item>kdensity_7</item>+      <item>ksm</item>+      <item>ksmirnov</item>+      <item>ktau</item>+      <item>kwallis</item>+      <item>labelbook</item>+      <item>ladder</item>+      <item>levels</item>+      <item>levelsof</item>+      <item>leverage</item>+      <item>lfit</item>+      <item>lfit_p</item>+      <item>lincom</item>+      <item>line</item>+      <item>linktest</item>+      <item>lloghet_glf</item>+      <item>lloghet_glf_sh</item>+      <item>lloghet_gp</item>+      <item>lloghet_ilf</item>+      <item>lloghet_ilf_sh</item>+      <item>lloghet_ip</item>+      <item>llogi_sw</item>+      <item>llogis_p</item>+      <item>llogist</item>+      <item>llogistic</item>+      <item>llogistichet</item>+      <item>lnorm_lf</item>+      <item>lnorm_sw</item>+      <item>lnorma_p</item>+      <item>lnormal</item>+      <item>lnormalhet</item>+      <item>lnormhet_glf</item>+      <item>lnormhet_glf_sh</item>+      <item>lnormhet_gp</item>+      <item>lnormhet_ilf</item>+      <item>lnormhet_ilf_sh</item>+      <item>lnormhet_ip</item>+      <item>lnskew0</item>+      <item>loadingplot</item>+      <item>logi</item>+      <item>logis_lf</item>+      <item>logistic</item>+      <item>logistic_p</item>+      <item>logit</item>+      <item>logit_estat</item>+      <item>logit_p</item>+      <item>loglogs</item>+      <item>logrank</item>+      <item>loneway</item>+      <item>lookfor</item>+      <item>lowess</item>+      <item>lowess_7</item>+      <item>lpredict</item>+      <item>lrecomp</item>+      <item>lroc</item>+      <item>lroc_7</item>+      <item>lrtest</item>+      <item>lsens</item>+      <item>lsens_7</item>+      <item>lsens_x</item>+      <item>lstat</item>+      <item>ltable</item>+      <item>ltable_7</item>+      <item>ltriang</item>+      <item>lv</item>+      <item>lvr2plot</item>+      <item>lvr2plot_7</item>++      <item>makecns</item>+      <item>manova_estat</item>+      <item>manova_p</item>+      <item>mantel</item>+      <item>mat_capp</item>+      <item>mat_order</item>+      <item>mat_rapp</item>+      <item>mata_matdescribe</item>+      <item>mata_matsave</item>+      <item>mata_matuse</item>+      <item>matalabel</item>+      <item>matcproc</item>+      <item>matlist</item>+      <item>matname</item>+      <item>matstrik</item>+      <item>mcc</item>+      <item>mcci</item>+      <item>md0_</item>+      <item>md1_</item>+      <item>md1debug_</item>+      <item>md2_</item>+      <item>md2debug_</item>+      <item>mds</item>+      <item>mds_estat</item>+      <item>mds_p</item>+      <item>mdsconfig</item>+      <item>mdslong</item>+      <item>mdsmat</item>+      <item>mdsshepard</item>+      <item>mdytoe</item>+      <item>mdytof</item>+      <item>me_derd</item>+      <item>mean</item>+      <item>means</item>+      <item>median</item>+      <item>memsize</item>+      <item>meqparse</item>+      <item>mer</item>+      <item>merg</item>+      <item>merge</item>+      <item>mfp</item>+      <item>mfx</item>+      <item>mhelp</item>+      <item>mhodds</item>+      <item>mixed_ll</item>+      <item>mixed_ll_reparm</item>+      <item>mkassert</item>+      <item>mkmat</item>+      <item>mkspline</item>+      <item>ml</item>+      <item>ml_5</item>+      <item>ml_adjs</item>+      <item>ml_bhhhs</item>+      <item>ml_c_d</item>+      <item>ml_check</item>+      <item>ml_clear</item>+      <item>ml_cnt</item>+      <item>ml_debug</item>+      <item>ml_defd</item>+      <item>ml_e0</item>+      <item>ml_e0_bfgs</item>+      <item>ml_e0_cycle</item>+      <item>ml_e0_dfp</item>+      <item>ml_e0i</item>+      <item>ml_e1</item>+      <item>ml_e1_bfgs</item>+      <item>ml_e1_bhhh</item>+      <item>ml_e1_cycle</item>+      <item>ml_e1_dfp</item>+      <item>ml_e2</item>+      <item>ml_e2_cycle</item>+      <item>ml_ebfg0</item>+      <item>ml_ebfr0</item>+      <item>ml_ebfr1</item>+      <item>ml_ebh0q</item>+      <item>ml_ebhh0</item>+      <item>ml_ebhr0</item>+      <item>ml_ebr0i</item>+      <item>ml_ecr0i</item>+      <item>ml_edfp0</item>+      <item>ml_edfr0</item>+      <item>ml_edfr1</item>+      <item>ml_edr0i</item>+      <item>ml_eds</item>+      <item>ml_eer0i</item>+      <item>ml_egr0i</item>+      <item>ml_elf</item>+      <item>ml_elf_bfgs</item>+      <item>ml_elf_bhhh</item>+      <item>ml_elf_cycle</item>+      <item>ml_elf_dfp</item>+      <item>ml_elfi</item>+      <item>ml_elfs</item>+      <item>ml_enr0i</item>+      <item>ml_enrr0</item>+      <item>ml_erdu0</item>+      <item>ml_erdu0_bfgs</item>+      <item>ml_erdu0_bhhh</item>+      <item>ml_erdu0_bhhhq</item>+      <item>ml_erdu0_cycle</item>+      <item>ml_erdu0_dfp</item>+      <item>ml_erdu0_nrbfgs</item>+      <item>ml_exde</item>+      <item>ml_footnote</item>+      <item>ml_geqnr</item>+      <item>ml_grad0</item>+      <item>ml_graph</item>+      <item>ml_hbhhh</item>+      <item>ml_hd0</item>+      <item>ml_hold</item>+      <item>ml_init</item>+      <item>ml_inv</item>+      <item>ml_log</item>+      <item>ml_max</item>+      <item>ml_mlout</item>+      <item>ml_model</item>+      <item>ml_nb0</item>+      <item>ml_opt</item>+      <item>ml_p</item>+      <item>ml_plot</item>+      <item>ml_query</item>+      <item>ml_rdgrd</item>+      <item>ml_repor</item>+      <item>ml_s_e</item>+      <item>ml_score</item>+      <item>ml_searc</item>+      <item>ml_technique</item>+      <item>ml_unhold</item>+      <item>mlf_</item>+      <item>mlog</item>+      <item>mlogi</item>+      <item>mlogit</item>+      <item>mlogit_footnote</item>+      <item>mlogit_p</item>+      <item>mlopts</item>+      <item>mnl0_</item>+      <item>mprobit</item>+      <item>mprobit_lf</item>+      <item>mprobit_p</item>+      <item>mrdu0_</item>+      <item>mrdu1_</item>+      <item>mvdecode</item>+      <item>mvencode</item>+      <item>mvreg</item>+      <item>mvreg_estat</item>+      <item>nbreg</item>+      <item>nbreg_al</item>+      <item>nbreg_lf</item>+      <item>nbreg_p</item>+      <item>nbreg_sw</item>+      <item>newey</item>+      <item>newey_7</item>+      <item>newey_p</item>+      <item>nl</item>+      <item>nl_7</item>+      <item>nl_p</item>+      <item>nl_p_7</item>+      <item>nlcom</item>+      <item>nlcom_p</item>+      <item>nlexp2</item>+      <item>nlexp2_7</item>+      <item>nlexp2a</item>+      <item>nlexp2a_7</item>+      <item>nlexp3</item>+      <item>nlexp3_7</item>+      <item>nlgom3</item>+      <item>nlgom3_7</item>+      <item>nlgom4</item>+      <item>nlgom4_7</item>+      <item>nlinit</item>+      <item>nllog3</item>+      <item>nllog3_7</item>+      <item>nllog4</item>+      <item>nllog4_7</item>+      <item>nlog_rd</item>+      <item>nlogit</item>+      <item>nlogit_p</item>+      <item>nlogitgen</item>+      <item>nlogittree</item>+      <item>nlpred</item>+      <item>note</item>+      <item>notes</item>+      <item>nptrend</item>+      <item>numlabel</item>+      <item>old_ver</item>+      <item>olo</item>+      <item>olog</item>+      <item>ologi</item>+      <item>ologi_sw</item>+      <item>ologit</item>+      <item>ologit_p</item>+      <item>ologitp</item>+      <item>op_colnm</item>+      <item>op_comp</item>+      <item>op_diff</item>+      <item>op_inv</item>+      <item>op_str</item>+      <item>opr</item>+      <item>opro</item>+      <item>oprob</item>+      <item>oprob_sw</item>+      <item>oprobi</item>+      <item>oprobi_p</item>+      <item>oprobit</item>+      <item>oprobitp</item>+      <item>opts_exclusive</item>+      <item>orthog</item>+      <item>orthpoly</item>+      <item>ovtest</item>++      <item>pac</item>+      <item>pac_7</item>+      <item>palette</item>+      <item>parse_dissim</item>+      <item>pause</item>+      <item>pca</item>+      <item>pca_8</item>+      <item>pca_display</item>+      <item>pca_estat</item>+      <item>pca_p</item>+      <item>pca_rotate</item>+      <item>pcamat</item>+      <item>pchart</item>+      <item>pchart_7</item>+      <item>pchi</item>+      <item>pchi_7</item>+      <item>pcorr</item>+      <item>pctile</item>+      <item>pentium</item>+      <item>pergram</item>+      <item>pergram_7</item>+      <item>permute</item>+      <item>permute_8</item>+      <item>personal</item>+      <item>peto_st</item>+      <item>pkcollapse</item>+      <item>pkcross</item>+      <item>pkequiv</item>+      <item>pkexamine</item>+      <item>pkexamine_7</item>+      <item>pkshape</item>+      <item>pksumm</item>+      <item>pksumm_7</item>+      <item>pnorm</item>+      <item>pnorm_7</item>+      <item>poisgof</item>+      <item>poiss_lf</item>+      <item>poiss_sw</item>+      <item>poisso_p</item>+      <item>poisson</item>+      <item>poisson_estat</item>+      <item>pperron</item>+      <item>prais</item>+      <item>prais_e</item>+      <item>prais_e2</item>+      <item>prais_p</item>+      <item>predict</item>+      <item>predictnl</item>+      <item>print</item>+      <item>prob</item>+      <item>probi</item>+      <item>probit</item>+      <item>probit_estat</item>+      <item>probit_p</item>+      <item>proc_time</item>+      <item>procoverlay</item>+      <item>procrustes</item>+      <item>procrustes_estat</item>+      <item>procrustes_p</item>+      <item>profiler</item>+      <item>prop</item>+      <item>proportion</item>+      <item>prtest</item>+      <item>prtesti</item>+      <item>pwcorr</item>+      <item>qby</item>+      <item>qbys</item>+      <item>qchi</item>+      <item>qchi_7</item>+      <item>qladder</item>+      <item>qladder_7</item>+      <item>qnorm</item>+      <item>qnorm_7</item>+      <item>qqplot</item>+      <item>qqplot_7</item>+      <item>qreg</item>+      <item>qreg_c</item>+      <item>qreg_p</item>+      <item>qreg_sw</item>+      <item>quadchk</item>+      <item>quantile</item>+      <item>quantile_7</item>+      <item>range</item>+      <item>ranksum</item>+      <item>ratio</item>+      <item>rchart</item>+      <item>rchart_7</item>+      <item>rcof</item>+      <item>recast</item>+      <item>recode</item>+      <item>reg</item>+      <item>reg3</item>+      <item>reg3_p</item>+      <item>regdw</item>+      <item>regr</item>+      <item>regre</item>+      <item>regre_p2</item>+      <item>regres</item>+      <item>regres_p</item>+      <item>regress</item>+      <item>regress_estat</item>+      <item>regriv_p</item>+      <item>remap</item>+      <item>renpfix</item>+      <item>repeat</item>+      <item>reshape</item>+      <item>robvar</item>+      <item>roccomp</item>+      <item>roccomp_7</item>+      <item>roccomp_8</item>+      <item>rocf_lf</item>+      <item>rocfit</item>+      <item>rocfit_8</item>+      <item>rocgold</item>+      <item>rocplot</item>+      <item>rocplot_7</item>+      <item>roctab</item>+      <item>roctab_7</item>+      <item>rolling</item>+      <item>rologit</item>+      <item>rologit_p</item>+      <item>rot</item>+      <item>rota</item>+      <item>rotat</item>+      <item>rotate</item>+      <item>rotatemat</item>+      <item>rreg</item>+      <item>rreg_p</item>+      <item>runtest</item>+      <item>rvfplot</item>+      <item>rvfplot_7</item>+      <item>rvpplot</item>+      <item>rvpplot_7</item>++      <item>safesum</item>+      <item>sample</item>+      <item>sampsi</item>+      <item>savedresults</item>+      <item>saveold</item>+      <item>sc</item>+      <item>scatter</item>+      <item>scm_mine</item>+      <item>sco</item>+      <item>scob_lf</item>+      <item>scob_p</item>+      <item>scobi_sw</item>+      <item>scobit</item>+      <item>scor</item>+      <item>score</item>+      <item>scoreplot</item>+      <item>scoreplot_help</item>+      <item>scree</item>+      <item>screeplot</item>+      <item>screeplot_help</item>+      <item>sdtest</item>+      <item>sdtesti</item>+      <item>separate</item>+      <item>seperate</item>+      <item>serrbar</item>+      <item>serrbar_7</item>+      <item>set_defaults</item>+      <item>sfrancia</item>+      <item>shewhart</item>+      <item>shewhart_7</item>+      <item>signrank</item>+      <item>signtest</item>+      <item>simul</item>+      <item>simul_7</item>+      <item>simulate</item>+      <item>simulate_8</item>+      <item>sktest</item>+      <item>slogit</item>+      <item>slogit_d2</item>+      <item>slogit_p</item>+      <item>smooth</item>+      <item>snapspan</item>+      <item>spearman</item>+      <item>spikeplot</item>+      <item>spikeplot_7</item>+      <item>spikeplt</item>+      <item>spline_x</item>+      <item>split</item>+      <item>sqreg</item>+      <item>sqreg_p</item>+      <item>ssc</item>+      <item>st</item>+      <item>st_ct</item>+      <item>st_hc</item>+      <item>st_hcd</item>+      <item>st_hcd_sh</item>+      <item>st_is</item>+      <item>st_issys</item>+      <item>st_note</item>+      <item>st_promo</item>+      <item>st_set</item>+      <item>st_show</item>+      <item>st_smpl</item>+      <item>st_subid</item>+      <item>stack</item>+      <item>statsby</item>+      <item>statsby_8</item>+      <item>stbase</item>+      <item>stci</item>+      <item>stci_7</item>+      <item>stcox</item>+      <item>stcox_estat</item>+      <item>stcox_fr</item>+      <item>stcox_fr_ll</item>+      <item>stcox_p</item>+      <item>stcox_sw</item>+      <item>stcoxkm</item>+      <item>stcoxkm_7</item>+      <item>stcstat</item>+      <item>stcurv</item>+      <item>stcurve</item>+      <item>stcurve_7</item>+      <item>stdes</item>+      <item>stem</item>+      <item>stepwise</item>+      <item>stereg</item>+      <item>stfill</item>+      <item>stgen</item>+      <item>stir</item>+      <item>stjoin</item>+      <item>stmc</item>+      <item>stmh</item>+      <item>stphplot</item>+      <item>stphplot_7</item>+      <item>stphtest</item>+      <item>stphtest_7</item>+      <item>stptime</item>+      <item>strate</item>+      <item>strate_7</item>+      <item>streg</item>+      <item>streg_sw</item>+      <item>streset</item>+      <item>sts</item>+      <item>sts_7</item>+      <item>stset</item>+      <item>stsplit</item>+      <item>stsum</item>+      <item>sttocc</item>+      <item>sttoct</item>+      <item>stvary</item>+      <item>stweib</item>+      <item>suest</item>+      <item>suest_8</item>+      <item>sunflower</item>+      <item>sureg</item>+      <item>survcurv</item>+      <item>survsum</item>+      <item>svar</item>+      <item>svar_p</item>+      <item>svmat</item>+      <item>svy</item>+      <item>svy_disp</item>+      <item>svy_dreg</item>+      <item>svy_est</item>+      <item>svy_est_7</item>+      <item>svy_estat</item>+      <item>svy_get</item>+      <item>svy_gnbreg_p</item>+      <item>svy_head</item>+      <item>svy_header</item>+      <item>svy_heckman_p</item>+      <item>svy_heckprob_p</item>+      <item>svy_intreg_p</item>+      <item>svy_ivreg_p</item>+      <item>svy_logistic_p</item>+      <item>svy_logit_p</item>+      <item>svy_mlogit_p</item>+      <item>svy_nbreg_p</item>+      <item>svy_ologit_p</item>+      <item>svy_oprobit_p</item>+      <item>svy_poisson_p</item>+      <item>svy_probit_p</item>+      <item>svy_regress_p</item>+      <item>svy_sub</item>+      <item>svy_sub_7</item>+      <item>svy_x</item>+      <item>svy_x_7</item>+      <item>svy_x_p</item>+      <item>svydes</item>+      <item>svydes_8</item>+      <item>svygen</item>+      <item>svygnbreg</item>+      <item>svyheckman</item>+      <item>svyheckprob</item>+      <item>svyintreg</item>+      <item>svyintreg_7</item>+      <item>svyintrg</item>+      <item>svyivreg</item>+      <item>svylc</item>+      <item>svylog_p</item>+      <item>svylogit</item>+      <item>svymarkout</item>+      <item>svymarkout_8</item>+      <item>svymean</item>+      <item>svymlog</item>+      <item>svymlogit</item>+      <item>svynbreg</item>+      <item>svyolog</item>+      <item>svyologit</item>+      <item>svyoprob</item>+      <item>svyoprobit</item>+      <item>svyopts</item>+      <item>svypois</item>+      <item>svypois_7</item>+      <item>svypoisson</item>+      <item>svyprobit</item>+      <item>svyprobt</item>+      <item>svyprop</item>+      <item>svyprop_7</item>+      <item>svyratio</item>+      <item>svyreg</item>+      <item>svyreg_p</item>+      <item>svyregress</item>+      <item>svyset</item>+      <item>svyset_7</item>+      <item>svyset_8</item>+      <item>svytab</item>+      <item>svytab_7</item>+      <item>svytest</item>+      <item>svytotal</item>+      <item>sw</item>+      <item>sw_8</item>+      <item>swcnreg</item>+      <item>swcox</item>+      <item>swereg</item>+      <item>swilk</item>+      <item>swlogis</item>+      <item>swlogit</item>+      <item>swologit</item>+      <item>swoprbt</item>+      <item>swpois</item>+      <item>swprobit</item>+      <item>swqreg</item>+      <item>swtobit</item>+      <item>swweib</item>+      <item>symmetry</item>+      <item>symmi</item>+      <item>symplot</item>+      <item>symplot_7</item>+      <item>sysdescribe</item>+      <item>sysuse</item>+      <item>szroeter</item>+      <item>tab_or</item>+      <item>tab1</item>+      <item>tab2</item>+      <item>tabi</item>+      <item>table</item>+      <item>tabodds</item>+      <item>tabodds_7</item>+      <item>tabstat</item>+      <item>te</item>+      <item>tes</item>+      <item>test</item>+      <item>testnl</item>+      <item>testparm</item>+      <item>teststd</item>+      <item>tetrachoric</item>+      <item>time_it</item>+      <item>tis</item>+      <item>tob</item>+      <item>tobi</item>+      <item>tobit</item>+      <item>tobit_p</item>+      <item>tobit_sw</item>+      <item>tostring</item>+      <item>total</item>+      <item>treat_ll</item>+      <item>treatr_p</item>+      <item>treatreg</item>+      <item>trim</item>+      <item>trnb_cons</item>+      <item>trnb_mean</item>+      <item>trpoiss_d2</item>+      <item>trunc_ll</item>+      <item>truncr_p</item>+      <item>truncreg</item>+      <item>tsappend</item>+      <item>tset</item>+      <item>tsfill</item>+      <item>tsline</item>+      <item>tsline_ex</item>+      <item>tsreport</item>+      <item>tsrline</item>+      <item>tsset</item>+      <item>tssmooth</item>+      <item>tsunab</item>+      <item>ttest</item>+      <item>ttesti</item>+      <item>tut_chk</item>+      <item>tut_wait</item>+      <item>tutorial</item>+      <item>tw</item>+      <item>tware_st</item>+      <item>two</item>+      <item>twoway</item>+      <item>twoway__fpfit_serset</item>+      <item>twoway__function_gen</item>+      <item>twoway__histogram_gen</item>+      <item>twoway__ipoint_serset</item>+      <item>twoway__ipoints_serset</item>+      <item>twoway__kdensity_gen</item>+      <item>twoway__lfit_serset</item>+      <item>twoway__normgen_gen</item>+      <item>twoway__pci_serset</item>+      <item>twoway__qfit_serset</item>+      <item>twoway__scatteri_serset</item>+      <item>twoway__sunflower_gen</item>+      <item>twoway_ksm_serset</item>+      <item>typeof</item>+      <item>unab</item>+      <item>unabbrev</item>+      <item>uselabel</item>++      <item>var</item>+      <item>var_mkcompanion</item>+      <item>var_p</item>+      <item>varbasic</item>+      <item>varfcast</item>+      <item>vargranger</item>+      <item>varirf</item>+      <item>varirf_add</item>+      <item>varirf_cgraph</item>+      <item>varirf_create</item>+      <item>varirf_ctable</item>+      <item>varirf_describe</item>+      <item>varirf_dir</item>+      <item>varirf_drop</item>+      <item>varirf_erase</item>+      <item>varirf_graph</item>+      <item>varirf_ograph</item>+      <item>varirf_rename</item>+      <item>varirf_set</item>+      <item>varirf_table</item>+      <item>varlmar</item>+      <item>varnorm</item>+      <item>varsoc</item>+      <item>varstable</item>+      <item>varstable_w</item>+      <item>varstable_w2</item>+      <item>varwle</item>+      <item>vce</item>+      <item>vec</item>+      <item>vec_fevd</item>+      <item>vec_mkphi</item>+      <item>vec_p</item>+      <item>vec_p_w</item>+      <item>vecirf_create</item>+      <item>veclmar</item>+      <item>veclmar_w</item>+      <item>vecnorm</item>+      <item>vecnorm_w</item>+      <item>vecrank</item>+      <item>vecstable</item>+      <item>verinst</item>+      <item>viewsource</item>+      <item>vif</item>+      <item>vwls</item>+      <item>wdatetof</item>+      <item>webdescribe</item>+      <item>webseek</item>+      <item>webuse</item>+      <item>weib_lf</item>+      <item>weib_lf0</item>+      <item>weib1_lf</item>+      <item>weib2_lf</item>+      <item>weibhet_glf</item>+      <item>weibhet_glf_sh</item>+      <item>weibhet_glfa</item>+      <item>weibhet_glfa_sh</item>+      <item>weibhet_gp</item>+      <item>weibhet_ilf</item>+      <item>weibhet_ilf_sh</item>+      <item>weibhet_ilfa</item>+      <item>weibhet_ilfa_sh</item>+      <item>weibhet_ip</item>+      <item>weibu_sw</item>+      <item>weibul_p</item>+      <item>weibull</item>+      <item>weibull_c</item>+      <item>weibull_s</item>+      <item>weibullhet</item>+      <item>whelp</item>+      <item>wilc_st</item>+      <item>wilcoxon</item>+      <item>wntestb</item>+      <item>wntestb_7</item>+      <item>wntestq</item>+      <item>xchart</item>+      <item>xchart_7</item>+      <item>xcorr</item>+      <item>xcorr_7</item>+      <item>xi</item>+      <item>xi_6</item>+      <item>xpose</item>+      <item>xt_iis</item>+      <item>xt_tis</item>+      <item>xtab_p</item>+      <item>xtabond</item>+      <item>xtbin_p</item>+      <item>xtclog</item>+      <item>xtcloglog</item>+      <item>xtcloglog_8</item>+      <item>xtcloglog_d2</item>+      <item>xtcloglog_re_p</item>+      <item>xtcnt_p</item>+      <item>xtcorr</item>+      <item>xtdata</item>+      <item>xtdes</item>+      <item>xtfront_p</item>+      <item>xtfrontier</item>+      <item>xtgee</item>+      <item>xtgee_elink</item>+      <item>xtgee_estat</item>+      <item>xtgee_makeivar</item>+      <item>xtgee_p</item>+      <item>xtgee_plink</item>+      <item>xtgls</item>+      <item>xtgls_p</item>+      <item>xthaus</item>+      <item>xthausman</item>+      <item>xtht_p</item>+      <item>xthtaylor</item>+      <item>xtile</item>+      <item>xtint_p</item>+      <item>xtintreg</item>+      <item>xtintreg_8</item>+      <item>xtintreg_d2</item>+      <item>xtintreg_p</item>+      <item>xtivp_1</item>+      <item>xtivp_2</item>+      <item>xtivreg</item>+      <item>xtline</item>+      <item>xtline_ex</item>+      <item>xtlogit</item>+      <item>xtlogit_8</item>+      <item>xtlogit_d2</item>+      <item>xtlogit_fe_p</item>+      <item>xtlogit_pa_p</item>+      <item>xtlogit_re_p</item>+      <item>xtmixed</item>+      <item>xtmixed_estat</item>+      <item>xtmixed_p</item>+      <item>xtnb_fe</item>+      <item>xtnb_lf</item>+      <item>xtnbreg</item>+      <item>xtnbreg_pa_p</item>+      <item>xtnbreg_refe_p</item>+      <item>xtpcse</item>+      <item>xtpcse_p</item>+      <item>xtpois</item>+      <item>xtpoisson</item>+      <item>xtpoisson_d2</item>+      <item>xtpoisson_pa_p</item>+      <item>xtpoisson_refe_p</item>+      <item>xtpred</item>+      <item>xtprobit</item>+      <item>xtprobit_8</item>+      <item>xtprobit_d2</item>+      <item>xtprobit_re_p</item>+      <item>xtps_fe</item>+      <item>xtps_lf</item>+      <item>xtps_ren</item>+      <item>xtps_ren_8</item>+      <item>xtrar_p</item>+      <item>xtrc</item>+      <item>xtrc_p</item>+      <item>xtrchh</item>+      <item>xtrefe_p</item>+      <item>xtreg</item>+      <item>xtreg_be</item>+      <item>xtreg_fe</item>+      <item>xtreg_ml</item>+      <item>xtreg_pa_p</item>+      <item>xtreg_re</item>+      <item>xtregar</item>+      <item>xtrere_p</item>+      <item>xtsf_ll</item>+      <item>xtsf_llti</item>+      <item>xtsum</item>+      <item>xttab</item>+      <item>xttest0</item>+      <item>xttobit</item>+      <item>xttobit_8</item>+      <item>xttobit_p</item>+      <item>xttrans</item>+      <item>yx</item>+      <item>yxview__barlike_draw</item>+      <item>yxview_area_draw</item>+      <item>yxview_bar_draw</item>+      <item>yxview_dot_draw</item>+      <item>yxview_dropline_draw</item>+      <item>yxview_function_draw</item>+      <item>yxview_iarrow_draw</item>+      <item>yxview_ilabels_draw</item>+      <item>yxview_normal_draw</item>+      <item>yxview_pcarrow_draw</item>+      <item>yxview_pcbarrow_draw</item>+      <item>yxview_pccapsym_draw</item>+      <item>yxview_pcscatter_draw</item>+      <item>yxview_pcspike_draw</item>+      <item>yxview_rarea_draw</item>+      <item>yxview_rbar_draw</item>+      <item>yxview_rbarm_draw</item>+      <item>yxview_rcap_draw</item>+      <item>yxview_rcapsym_draw</item>+      <item>yxview_rconnected_draw</item>+      <item>yxview_rline_draw</item>+      <item>yxview_rscatter_draw</item>+      <item>yxview_rspike_draw</item>+      <item>yxview_spike_draw</item>+      <item>yxview_sunflower_draw</item>+      <item>zap_s</item>+      <item>zinb</item>+      <item>zinb_llf</item>+      <item>zinb_plf</item>+      <item>zip</item>+      <item>zip_llf</item>+      <item>zip_p</item>+      <item>zip_plf</item>+      <item>zt_ct_5</item>+      <item>zt_hc_5</item>+      <item>zt_hcd_5</item>+      <item>zt_is_5</item>+      <item>zt_iss_5</item>+      <item>zt_sho_5</item>+      <item>zt_smp_5</item>+      <item>ztbase_5</item>+      <item>ztcox_5</item>+      <item>ztdes_5</item>+      <item>ztereg_5</item>+      <item>ztfill_5</item>+      <item>ztgen_5</item>+      <item>ztir_5</item>+      <item>ztjoin_5</item>+      <item>ztnb</item>+      <item>ztnb_p</item>+      <item>ztp</item>+      <item>ztp_p</item>+      <item>zts_5</item>+      <item>ztset_5</item>+      <item>ztspli_5</item>+      <item>ztsum_5</item>+      <item>zttoct_5</item>+      <item>ztvary_5</item>+      <item>ztweib_5</item>+    </list>++    <list name="Mata">+      <item>_cholinv</item>+      <item>_cholsolve</item>+      <item>_corr</item>+      <item>_edittoint</item>+      <item>_edittointtol</item>+      <item>_edittozero</item>+      <item>_edittozerotol</item>+      <item>_eigen_work</item>+      <item>_eigensystem</item>+      <item>_eigenvalues</item>+      <item>_equilc</item>+      <item>_equilr</item>+      <item>_equilrc</item>+      <item>_ftell</item>+      <item>_fullsvd</item>+      <item>_hqrd</item>+      <item>_hqrdp</item>+      <item>_invlower</item>+      <item>_jumble</item>+      <item>_lefteigensystem</item>+      <item>_lowertriangle</item>+      <item>_lud</item>+      <item>_lud_la</item>+      <item>_luinv</item>+      <item>_lusolve</item>+      <item>_matexpsym</item>+      <item>_matlogsym</item>+      <item>_matpowersym</item>+      <item>_mprobit_outer_prod</item>+      <item>_mprobit_quadrature</item>+      <item>_mprobit_quadrature_eval</item>+      <item>_mprobit_quadrature_m</item>+      <item>_mprobit_select</item>+      <item>_mprobit_simulator</item>+      <item>_mprobit_simulator_case_g</item>+      <item>_mprobit_simulator_lk</item>+      <item>_mprobit_simulator_m</item>+      <item>_mprobit_simulator_mi</item>+      <item>_mprobit_validate_choice</item>+      <item>_mprobit_weights_roots_laguerre</item>+      <item>_perhapsequilc</item>+      <item>_perhapsequilr</item>+      <item>_perhapsequilrc</item>+      <item>_pinv</item>+      <item>_qrinv</item>+      <item>_qrsolve</item>+      <item>_rowswap</item>+      <item>_solvelower</item>+      <item>_solveupper</item>+      <item>_sort</item>+      <item>_svd</item>+      <item>_svdsv</item>+      <item>_svsolve</item>+      <item>_svy_design</item>+      <item>_svy_group_sum</item>+      <item>_svy_identify</item>+      <item>_svy_mean</item>+      <item>_svy_mean_post</item>+      <item>_svy_mean_std</item>+      <item>_svy_mean_stdpost</item>+      <item>_svy_over_expand</item>+      <item>_svy_over_sizes</item>+      <item>_svy_post_sizes</item>+      <item>_svy_ratio</item>+      <item>_svy_ratio_post</item>+      <item>_svy_ratio_std</item>+      <item>_svy_ratio_stdpost</item>+      <item>_svy_srs_variance</item>+      <item>_svy_srssub_variance</item>+      <item>_svy_std_sizes</item>+      <item>_svy_total</item>+      <item>_svy_total_post</item>+      <item>_svy_variance</item>+      <item>_symeigen_work</item>+      <item>_symeigensystem</item>+      <item>_symeigenvalues</item>+      <item>_symmatfunc_work</item>+      <item>_uppertriangle</item>+      <item>_xtm_beta</item>+      <item>_xtm_blup</item>+      <item>_xtm_blup_save</item>+      <item>_xtm_blup_save_u</item>+      <item>_xtm_blup_u</item>+      <item>_xtm_cleanup</item>+      <item>_xtm_covtype</item>+      <item>_xtm_de_th_u</item>+      <item>_xtm_delta_to_theta</item>+      <item>_xtm_det_upper</item>+      <item>_xtm_em_get_rij</item>+      <item>_xtm_em_get_uij</item>+      <item>_xtm_em_iter</item>+      <item>_xtm_em_iter_u</item>+      <item>_xtm_em_solve</item>+      <item>_xtm_fact_expand</item>+      <item>_xtm_ga_th_u</item>+      <item>_xtm_gamma_to_theta</item>+      <item>_xtm_get_delta</item>+      <item>_xtm_get_delta_u</item>+      <item>_xtm_invert_R</item>+      <item>_xtm_logdetr00</item>+      <item>_xtm_logdetr00_u</item>+      <item>_xtm_matexp</item>+      <item>_xtm_matlog</item>+      <item>_xtm_mixed_ll</item>+      <item>_xtm_mixed_ll_u</item>+      <item>_xtm_mixed_ll_uu</item>+      <item>_xtm_mk_eqs</item>+      <item>_xtm_ml_eqlist</item>+      <item>_xtm_ml_eqlist_wrk</item>+      <item>_xtm_setup</item>+      <item>_xtm_start</item>+      <item>_xtm_start_collapse</item>+      <item>_xtm_start_u</item>+      <item>_xtm_th_de_u</item>+      <item>_xtm_th_ga_u</item>+      <item>_xtm_theta_to_delta</item>+      <item>_xtm_theta_to_gamma</item>+      <item>acos</item>+      <item>acosh</item>+      <item>aggregate</item>+      <item>array</item>+      <item>asin</item>+      <item>asinh</item>+      <item>assert</item>+      <item>asserteq</item>+      <item>atan</item>+      <item>atanh</item>+      <item>blockdiag</item>+      <item>boolean</item>+      <item>break</item>+      <item>byte</item>+      <item>case</item>+      <item>cat</item>+      <item>catch</item>+      <item>chdir</item>+      <item>cholesky</item>+      <item>cholinv</item>+      <item>cholsolve</item>+      <item>class</item>+      <item>cloglog</item>+      <item>collate</item>+      <item>colmax</item>+      <item>colmin</item>+      <item>colscalefactors</item>+      <item>colshape</item>+      <item>colvector</item>+      <item>complex</item>+      <item>cond</item>+      <item>const</item>+      <item>continue</item>+      <item>convolve</item>+      <item>convolveslowly</item>+      <item>Corr</item>+      <item>correlation</item>+      <item>Corrslowly</item>+      <item>corruppercase</item>+      <item>cosh</item>+      <item>deconvolve</item>+      <item>default</item>+      <item>delegate</item>+      <item>delete</item>+      <item>designmatrix</item>+      <item>det</item>+      <item>dettriangular</item>+      <item>diag</item>+      <item>diag0cnt</item>+      <item>do</item>+      <item>double</item>+      <item>dsign</item>+      <item>e</item>+      <item>editmissing</item>+      <item>edittoint</item>+      <item>edittointtol</item>+      <item>edittozero</item>+      <item>edittozerotol</item>+      <item>editvalue</item>+      <item>eigensystem</item>+      <item>eigenvalues</item>+      <item>else</item>+      <item>eltypedef</item>+      <item>end</item>+      <item>enum</item>+      <item>explicit</item>+      <item>export</item>+      <item>external</item>+      <item>fft</item>+      <item>fileexists</item>+      <item>findfile</item>+      <item>float</item>+      <item>for</item>+      <item>friend</item>+      <item>ftell</item>+      <item>ftfreqs</item>+      <item>ftpad</item>+      <item>ftperiodogram</item>+      <item>ftretime</item>+      <item>ftunwrap</item>+      <item>ftwrap</item>+      <item>fullsdiag</item>+      <item>fullsvd</item>+      <item>function</item>+      <item>gamma</item>+      <item>global</item>+      <item>goto</item>+      <item>helloworld</item>+      <item>Hilbert</item>+      <item>hqrd</item>+      <item>hqrdmultq</item>+      <item>hqrdmultq1t</item>+      <item>hqrdp</item>+      <item>hqrdq</item>+      <item>hqrdq1</item>+      <item>hqrdr</item>+      <item>hqrdr1</item>+      <item>if</item>+      <item>inline</item>+      <item>int</item>+      <item>invcloglog</item>+      <item>invfft</item>+      <item>invHilbert</item>+      <item>invlogit</item>+      <item>invlower</item>+      <item>invorder</item>+      <item>invslowfft</item>+      <item>invslowft</item>+      <item>invvech</item>+      <item>isdiagonal</item>+      <item>jumble</item>+      <item>lefteigensystem</item>+      <item>local</item>+      <item>log10</item>+      <item>logit</item>+      <item>long</item>+      <item>lowertriangle</item>+      <item>lud</item>+      <item>luinv</item>+      <item>lusolve</item>+      <item>makesymmetric</item>+      <item>mat_norm</item>+      <item>mata</item>+      <item>matexpsym</item>+      <item>matlogsym</item>+      <item>matpowersym</item>+      <item>matrix</item>+      <item>max</item>+      <item>mean</item>+      <item>meanvariance</item>+      <item>min</item>+      <item>mkdir</item>+      <item>mmat_</item>+      <item>mmat_describe</item>+      <item>mmat_expandlist</item>+      <item>mmat_readerror</item>+      <item>mmat_save</item>+      <item>mmat_use</item>+      <item>mmat_writeerror</item>+      <item>namespace</item>+      <item>new</item>+      <item>norm</item>+      <item>NULL</item>+      <item>numeric</item>+      <item>operator</item>+      <item>orgtypedef</item>+      <item>panelsetup</item>+      <item>panelsetup_u</item>+      <item>panelstats</item>+      <item>panelsubmatrix</item>+      <item>panelsubview</item>+      <item>pathlist</item>+      <item>pathsubsysdir</item>+      <item>pi</item>+      <item>pinv</item>+      <item>pointer</item>+      <item>polyadd</item>+      <item>polyadd_expand</item>+      <item>polyderiv</item>+      <item>polydiv</item>+      <item>polyeval</item>+      <item>polyinteg</item>+      <item>polymorphic</item>+      <item>polymult</item>+      <item>polyroots</item>+      <item>polysolve</item>+      <item>polytrim</item>+      <item>pragma</item>+      <item>private</item>+      <item>protected</item>+      <item>public</item>+      <item>qrd</item>+      <item>qrdp</item>+      <item>qrinv</item>+      <item>qrsolve</item>+      <item>quad</item>+      <item>quadcorrelation</item>+      <item>quadmeanvariance</item>+      <item>quadrant</item>+      <item>quadvariance</item>+      <item>range</item>+      <item>rangen</item>+      <item>rank</item>+      <item>rank_from_singular_values</item>+      <item>real</item>+      <item>return</item>+      <item>revorder</item>+      <item>rmdir</item>+      <item>rowmax</item>+      <item>rowmin</item>+      <item>rowscalefactors</item>+      <item>rowvector</item>+      <item>scalar</item>+      <item>scalar_norm</item>+      <item>short</item>+      <item>sign</item>+      <item>signed</item>+      <item>sinh</item>+      <item>sizeof</item>+      <item>slowfft</item>+      <item>slowft</item>+      <item>solve_tol</item>+      <item>solve_tolscale</item>+      <item>solvelower</item>+      <item>solveupper</item>+      <item>sort</item>+      <item>spline3</item>+      <item>spline3eval</item>+      <item>splineeval</item>+      <item>st_islmname</item>+      <item>static</item>+      <item>string</item>+      <item>struct</item>+      <item>super</item>+      <item>svd</item>+      <item>svdsv</item>+      <item>svsolve</item>+      <item>switch</item>+      <item>symeigensystem</item>+      <item>symeigenvalues</item>+      <item>tanh</item>+      <item>template</item>+      <item>this</item>+      <item>throw</item>+      <item>Toeplitz</item>+      <item>trace</item>+      <item>trace_prod</item>+      <item>transmorphic</item>+      <item>transposeonly</item>+      <item>try</item>+      <item>typedef</item>+      <item>typename</item>+      <item>union</item>+      <item>uniqrows</item>+      <item>unitcircle</item>+      <item>unorder</item>+      <item>unsigned</item>+      <item>uppertriangle</item>+      <item>using</item>+      <item>Vandermonde</item>+      <item>variance</item>+      <item>vec</item>+      <item>vec_norm</item>+      <item>vech</item>+      <item>vector</item>+      <item>version</item>+      <item>virtual</item>+      <item>void</item>+      <item>volatile</item>+      <item>while</item>+    </list>++    <contexts>++      <context        attribute="Normal Text"   lineEndContext="#stay" name="Normal Text">++        <keyword      attribute="Keyword"       context="#stay" String="proc-options" />+        <keyword      attribute="Keyword"       context="#stay" String="Internal-Stata-commands" />+        <keyword      attribute="Keyword"       context="#stay" String="procedures" />++        <keyword      attribute="Graphics"      context="#stay" String="graphics-options" />+        <keyword      attribute="Graphics"      context="#stay" String="Stata-colors" />++        <keyword      attribute="Functions"     context="#stay" String="math-functions" />+        <keyword      attribute="Functions"     context="#stay" String="probability-functions" />+        <keyword      attribute="Functions"     context="#stay" String="string-functions" />+        <keyword      attribute="Functions"     context="#stay" String="programming-functions" />+        <keyword      attribute="Functions"     context="#stay" String="date-functions" />+        <keyword      attribute="Functions"     context="#stay" String="timeseries-functions" />+        <keyword      attribute="Functions"     context="#stay" String="matrix-functions" />+        <keyword      attribute="Functions"     context="#stay" String="egen-functions" />++        <keyword      attribute="Mata"          context="#stay" String="Mata" />++        <keyword      attribute="Constants"     context="#stay" String="constants" />+        <keyword      attribute="System Params" context="#stay" String="System-parameters" />++        <keyword      attribute="Macro"         context="#stay" String="macro-extended-functions" />+        <RegExpr      attribute="GlobalMacro"   context="#stay" String="\$[A-Za-z0-9_?{}!]+" />++        <DetectChar   attribute="String"        context="string" char="&quot;"/>+        <Detect2Chars attribute="String"        context="#stay" char="`" char1='"'/>++        <RangeDetect  attribute="Macro"         context="#stay" char= "`" char1= "'" />++        <Detect2Chars attribute="Comment" context="Commentar 1" char="/" char1="/"/>+        <Detect2Chars attribute="Comment" context="Commentar 2" char="/" char1="*" beginRegion="Comment"/>++        <DetectChar   attribute="Normal Text"   context="#stay" char="{" beginRegion="block"/>+        <DetectChar   attribute="Normal Text"   context="#stay" char="}" endRegion="block"/>++        <StringDetect attribute="Normal Text"   context="#stay" String="program define" beginRegion="block"/>+        <StringDetect attribute="Normal Text"   context="#stay" String="end" endRegion="block"/>++      </context>++      <context attribute="Comment" lineEndContext="#pop" name="Commentar 1">+        <IncludeRules context="##Alerts" />+      </context>++      <context attribute="Comment" lineEndContext="#stay" name="Commentar 2">+        <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" endRegion="Comment"/>+        <IncludeRules context="##Alerts" />+      </context>++      <context attribute="String" lineEndContext="#stay" name="string">+        <HlCStringChar attribute="String Char" context="#stay"/>+        <DetectChar attribute="String" context="#pop" char="&quot;"/>+      </context>++    </contexts>++    <itemDatas>++      <itemData name="Normal Text"    defStyleNum="dsNormal"/>+      <itemData name="Keyword"        defStyleNum="dsKeyword"/>+      <itemData name="Graphics"       defStyleNum="dsBaseN" />+      <itemData name="Functions"      defStyleNum="dsFunction" />+      <itemData name="Mata"           defStyleNum="dsKeyword" />+      <itemData name="Constants"      defStyleNum="dsDataType" />+      <itemData name="System Params"  defStyleNum="dsDecVal" />++      <itemData name="String"         defStyleNum="dsString"/>+      <itemData name="String Char"    defStyleNum="dsChar"/>++      <itemData name="Macro"          defStyleNum="dsOthers"/>+      <itemData name="GlobalMacro"    defStyleNum="dsOthers"/>++      <itemData name="Comment"        defStyleNum="dsComment"/>++    </itemDatas>++  </highlighting>++  <general>+    <comments>+      <comment name="singleLine" start="//" />+      <comment name="multiLine" start="/*" end="*/" />+    </comments>+    <keywords casesensitive="1" />+  </general>++</language>
syntax/tcsh.xml view
@@ -8,7 +8,7 @@         <!ENTITY noword   "(?![\w$+-])">		<!-- no word, $, + or - following -->         <!ENTITY pathpart "([\w_@.&#37;*?+-]|\\ )">     <!-- valid character in a file name --> ]>-<language name="Tcsh" version="5" kateversion="5.0" section="Scripts" extensions="*.csh;*.tcsh;csh.cshrc;csh.login;.tcshrc;.cshrc;.login" mimetype="application/x-csh" casesensitive="1" author="Matthew Woehlke (mw_triad@users.sourceforge.net)" license="LGPL">+<language name="Tcsh" version="6" kateversion="5.0" section="Scripts" extensions="*.csh;*.tcsh;csh.cshrc;csh.login;.tcshrc;.cshrc;.login" mimetype="application/x-csh" casesensitive="1" author="Matthew Woehlke (mw_triad@users.sourceforge.net)" license="LGPL">  <!-- (c) 2006 Matthew Woehlke (mw_triad@users.sourceforge.net)     Based on the bash highlighter by Wilbert Berendsen (wilbert@kde.nl)@@ -16,15 +16,9 @@    <highlighting>     <list name="keywords">-      <item>else</item>-      <item>for</item>       <item>function</item>       <item>in</item>-      <item>select</item>-      <item>until</item>-      <item>while</item>       <item>.</item>-      <item>then</item>     </list>      <list name="builtins">@@ -499,9 +493,6 @@       <context attribute="Normal Text" lineEndContext="#stay" name="FindCommands">         <!-- start expression in double parentheses --> <!--!--><Detect2Chars attribute="Keyword" context="ExprDblParen" char="(" char1="(" beginRegion="expression" />-        <!-- start expression in double brackets -->-<!--!--><RegExpr attribute="Keyword" context="ExprDblBracket" String="\[\[&eos;" beginRegion="expression" column="0"/>-<!--!--><RegExpr attribute="Keyword" context="ExprDblBracket" String="\s\[\[&eos;" beginRegion="expression" />         <!-- start expression in single brackets --> <!--!--><RegExpr attribute="Builtin" context="ExprBracket" String="\[&eos;" beginRegion="expression" column="0"/> <!--!--><RegExpr attribute="Builtin" context="ExprBracket" String="\s\[&eos;" beginRegion="expression" />@@ -510,13 +501,14 @@         <!-- start a subshell --> <!--!--><DetectChar attribute="Keyword" context="SubShell" char="(" beginRegion="subshell" />         <!-- match do and if blocks -->-<!--!--><RegExpr attribute="Keyword" context="#stay" String="\bdo&noword;" beginRegion="do" />-<!--!--><RegExpr attribute="Keyword" context="#stay" String="\bdone&noword;" endRegion="do" />-<!--!--><RegExpr attribute="Keyword" context="#stay" String="\belse\s+if&noword;" />-<!--!--><RegExpr attribute="Keyword" context="#stay" String="\bif&noword;" beginRegion="if" />-<!--!--><RegExpr attribute="Keyword" context="#stay" String="\bendif&noword;" endRegion="if" />+<!--!--><RegExpr attribute="Control Flow" context="If" String="\bif&noword;" />+<!--!--><RegExpr attribute="Control Flow" context="ElseIf" String="\belse\s+if&noword;" />+<!--!--><RegExpr attribute="Control Flow" context="#stay" String="\belse&noword;" />+<!--!--><RegExpr attribute="Control Flow" context="#stay" String="\bendif&noword;" endRegion="if" />         <!-- handle switch as a special case -->-<!--!--><RegExpr attribute="Keyword" context="Switch" String="\bswitch&noword;" beginRegion="switch" />+<!--!--><RegExpr attribute="Control Flow" context="Switch" String="\bswitch&noword;" beginRegion="switch" />+<!--!--><RegExpr attribute="Control Flow" context="#stay" String="\b(foreach|while)&noword;" beginRegion="loop" />+<!--!--><RegExpr attribute="Control Flow" context="#stay" String="\bend&noword;" endRegion="loop" />         <!-- handle command line options -->         <RegExpr attribute="Option" context="#stay" String="-[A-Za-z0-9][A-Za-z0-9_]*" />         <RegExpr attribute="Option" context="#stay" String="--[a-z][A-Za-z0-9_-]*" />@@ -581,9 +573,7 @@         <RegExpr attribute="Expression" context="#stay" String="-[rwxXeozsfdlbcpSugktRLDIFNZ](?=\s)"/>         <RegExpr attribute="Expression" context="#stay" String="-[AMCUG]:?(?=\s)"/>         <RegExpr attribute="Expression" context="#stay" String="-P[0-7]{,3}:?(?=\s)"/>-        <RegExpr attribute="Expression" context="#stay" String="([|&amp;=&gt;&lt;])\1"/>-        <RegExpr attribute="Expression" context="#stay" String="[|^&amp;&gt;&lt;+\-*/%!~]"/>-        <RegExpr attribute="Expression" context="#stay" String="([!=]~|[!&gt;&lt;]=)"/>+        <RegExpr attribute="Expression" context="#stay" String="[=!][~=]|[*>&lt;!~]"/>       </context>  @@ -619,15 +609,6 @@         <IncludeRules context="FindMost" />       </context> -      <!-- ExprDblBracket consumes an expression till ]] -->-      <context attribute="Normal Text" lineEndContext="#stay" name="ExprDblBracket">-        <RegExpr attribute="Keyword" context="#pop" String="\s\]\](?=($|[\s;|&amp;]))" endRegion="expression" />-        <RegExpr attribute="Keyword" context="#pop" String="\]\](?=($|[\s;|&amp;]))" endRegion="expression" column="0"/>-        <DetectChar attribute="Normal Text" context="ExprSubParen" char="(" />-        <IncludeRules context="FindTests" />-        <IncludeRules context="FindMost" />-      </context>-       <!-- Group consumes shell input till } -->       <context attribute="Normal Text" lineEndContext="#stay" name="Group">         <DetectChar attribute="Keyword" context="#pop" char="}" endRegion="group" />@@ -760,6 +741,31 @@         <IncludeRules context="FindMost" />       </context> +      <context attribute="Normal Text" lineEndContext="#pop" name="If" fallthrough="true" fallthroughContext="#pop">+        <DetectSpaces/>+        <DetectChar attribute="Keyword" context="ArithmeticCondition" char="(" beginRegion="cond" />+        <DetectChar attribute="Variable" context="Subscript" char="[" />+        <StringDetect attribute="Control Flow" context="#pop" String="then" beginRegion="if" />+      </context>++      <context attribute="Normal Text" lineEndContext="#pop" name="ElseIf" fallthrough="true" fallthroughContext="#pop">+        <DetectSpaces/>+        <DetectChar attribute="Keyword" context="ArithmeticCondition" char="(" beginRegion="cond" />+        <DetectChar attribute="Variable" context="Subscript" char="[" />+        <StringDetect attribute="Control Flow" context="#pop" String="then" />+      </context>++      <context attribute="Normal Text" lineEndContext="#stay" name="ArithmeticCondition">+        <DetectChar attribute="Keyword" context="#pop" char=")" endRegion="cond" />+        <DetectChar attribute="Keyword" context="ArithmeticCondition" char="(" beginRegion="cond" />+        <RegExpr attribute="Expression" context="#stay" String="[=!]~|[=!>&lt;]="/>+        <AnyChar attribute="Expression" context="#stay" String="|^&amp;>&lt;+-*/%!~"/>+        <IncludeRules context="FindComments" />+        <IncludeRules context="FindStrings" />+        <IncludeRules context="FindSubstitutions" />+        <IncludeRules context="FindOthers" />+      </context>+       <!-- SwitchCase is called when the construct 'switch ... case' has been found. -->       <context attribute="Normal Text" lineEndContext="#stay" name="SwitchCase">         <DetectChar attribute="Keyword" context="SwitchExpr" char=":" beginRegion="switchexpr" />@@ -783,22 +789,23 @@     <itemDatas>       <itemData name="Normal Text"	defStyleNum="dsNormal" />       <itemData name="Comment"		defStyleNum="dsComment" />-      <itemData name="Keyword" 		defStyleNum="dsKeyword" />-      <itemData name="Control" 		defStyleNum="dsKeyword" />-      <itemData name="Builtin" 		defStyleNum="dsKeyword" />-      <itemData name="Command" 		defStyleNum="dsKeyword" />-      <itemData name="Redirection" 	defStyleNum="dsKeyword" />-      <itemData name="Escape" 		defStyleNum="dsDataType" />+      <itemData name="Control Flow" 	defStyleNum="dsControlFlow" spellChecking="false" />+      <itemData name="Keyword" 		defStyleNum="dsKeyword" spellChecking="false" />+      <itemData name="Control" 		defStyleNum="dsKeyword" spellChecking="false" />+      <itemData name="Builtin" 		defStyleNum="dsKeyword" spellChecking="false" />+      <itemData name="Command" 		defStyleNum="dsKeyword" spellChecking="false" />+      <itemData name="Redirection" 	defStyleNum="dsKeyword" spellChecking="false" />+      <itemData name="Escape" 		defStyleNum="dsDataType" spellChecking="false" />       <itemData name="String SingleQ" 	defStyleNum="dsString" />       <itemData name="String DoubleQ" 	defStyleNum="dsString" />-      <itemData name="Backquote" 	defStyleNum="dsKeyword" />-      <itemData name="String Transl." 	defStyleNum="dsString" />-      <itemData name="String Escape" 	defStyleNum="dsDataType" />-      <itemData name="Variable" 	defStyleNum="dsOthers" />-      <itemData name="Expression" 	defStyleNum="dsOthers" />-      <itemData name="Function" 	defStyleNum="dsFunction" />-      <itemData name="Path" 		defStyleNum="dsNormal" />-      <itemData name="Option" 		defStyleNum="dsNormal" />+      <itemData name="Backquote" 	defStyleNum="dsKeyword" spellChecking="false" />+      <itemData name="String Transl." 	defStyleNum="dsString" spellChecking="false" />+      <itemData name="String Escape" 	defStyleNum="dsDataType" spellChecking="false" />+      <itemData name="Variable" 	defStyleNum="dsOthers" spellChecking="false" />+      <itemData name="Expression" 	defStyleNum="dsOthers" spellChecking="false" />+      <itemData name="Function" 	defStyleNum="dsFunction" spellChecking="false" />+      <itemData name="Path" 		defStyleNum="dsNormal" spellChecking="false" />+      <itemData name="Option" 		defStyleNum="dsNormal" spellChecking="false" />     </itemDatas>   </highlighting>   <general>
syntax/typescript.xml view
@@ -1,2023 +1,707 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE language SYSTEM "language.dtd" [-	<!ENTITY identifier "([a-zA-Z_$]|[^[:ascii:]])([\w$]|[^[:ascii:]])*">-]>--<!---    ====================================================================--      This file is part of the KDE's KSyntaxHighlighting framework.--      Copyright 2018 Nibaldo González S. (nibgonz@gmail.com)--      This Source Code Form is subject to the terms of the MIT License.-      If a copy of the license was not distributed with this file,-      You can obtain one at: https://opensource.org/licenses/MIT--    ====================================================================--    This file is an extension of the JavaScript highlighter-    (javascript.xml, Version 10 and higher).-    Based on the TypeScript grammar files,-    available at: https://github.com/Microsoft/TypeScript-TmLanguage--    NOTE: TypeScript directives are highlighted by "doxygen.xml",-    included in the JavaScript highlighter.-    Ex:-      /// <reference no-default-lib="true"/>--      Tags: reference, amd-dependency, amd-module-      Attributes: path, types, no-default-lib, name--    TODO: The keywords of built-in classes & functions can be included-    in "javascript.xml". The only drawback is that some XML files use-    JavaScript highlighting, through "IncludeRules", and should not-    incorporate these keywords (for example: "qml.xml").--    Change log:-     * v2 [2018-12-29]: Don't highlight built-in classes as functions,-                        fix float-points, improve types detection and other fixes.-     * v1 [2018-11-18]: Initial version--->--<language name="TypeScript"-          version="2"-          kateversion="5.53"-          section="Scripts"-          extensions="*.ts"-          priority="9"-          mimetype="text/typescript;application/typescript;text/x-typescript;application/x-typescript"-          indenter="cstyle"-          author="Nibaldo González (nibgonz@gmail.com)"-          license="MIT">--<highlighting>--	<!-- Include all JavaScript keywords! -->-	<list name="controlflow">-		<include>controlflow##JavaScript</include>-		<item>goto</item>-	</list>-	<list name="keywords">-		<include>keywords##JavaScript</include>-		<item>declare</item> <!-- storage.modifier.ts -->-	</list>-	<list name="reserved">-		<include>reserved##JavaScript</include>-		<item>type</item>-		<item>arguments</item>--		<!-- Class -->-		<item>readonly</item>-		<item>abstract</item>-		<item>constructor</item>-		<item>get</item>-		<item>set</item>-		<!-- Also:-		     public, protected, private, async, super, new, static -->-	</list>-	<list name="module">-		<include>module##JavaScript</include>-	</list>-	<list name="primitives">-		<include>primitives##JavaScript</include>--		<!-- Types Built-in -->-		<item>object</item>-		<!-- Also:-		     this, true, false, undefined, null -->-	</list>--	<list name="control_export_types">-		<!-- storage.type.namespace.ts -->-		<item>namespace</item>-		<item>module</item>-	</list>-	<list name="object_iden">-		<item>keyof</item>-		<item>infer</item>-	</list>-	<list name="types_primitives">-		<item>string</item>-		<item>number</item>-		<item>boolean</item>-		<item>symbol</item>-		<item>any</item>-		<item>void</item>-		<item>never</item>-		<item>unknown</item>-		<item>undefined</item>-		<item>null</item>-	</list>--	<!-- Built-in Classes & Functions -->--	<list name="class_builtin">-		<item>Array</item>-		<item>ArrayBuffer</item>-		<item>Atomics</item>-		<item>Boolean</item>-		<item>DataView</item>-		<item>Date</item>-		<item>Float32Array</item>-		<item>Float64Array</item>-		<item>Function</item>-		<item>Generator</item>-		<item>GeneratorFunction</item>-		<item>Int8Array</item>-		<item>Int16Array</item>-		<item>Int32Array</item>-		<item>Intl</item>-		<item>Map</item>-		<item>Number</item>-		<item>Object</item>-		<item>Proxy</item>-		<item>Reflect</item>-		<item>RegExp</item>-		<item>Set</item>-		<item>SharedArrayBuffer</item>-		<item>SIMD</item>-		<item>String</item>-		<item>Symbol</item>-		<item>TypedArray</item>-		<item>Uint8Array</item>-		<item>Uint16Array</item>-		<item>Uint32Array</item>-		<item>Uint8ClampedArray</item>-		<item>WeakMap</item>-		<item>WeakSet</item>-		<!-- Class: Error -->-		<item>Error</item>-		<item>EvalError</item>-		<item>InternalError</item>-		<item>RangeError</item>-		<item>ReferenceError</item>-		<item>SyntaxError</item>-		<item>TypeError</item>-		<item>URIError</item>-		<!-- Class: Math -->-		<item>Math</item>-		<!-- Class: Promise -->-		<item>Promise</item>-		<!-- Other -->-		<item>JSON</item>-		<item>console</item>-		<item>process</item>-	</list>-	<!-- DOM Classes -->-	<list name="class_dom">-		<item>AnalyserNode</item>-		<item>ArrayBufferView</item>-		<item>Attr</item>-		<item>AudioBuffer</item>-		<item>AudioBufferSourceNode</item>-		<item>AudioContext</item>-		<item>AudioDestinationNode</item>-		<item>AudioListener</item>-		<item>AudioNode</item>-		<item>AudioParam</item>-		<item>BatteryManager</item>-		<item>BeforeUnloadEvent</item>-		<item>BiquadFilterNode</item>-		<item>Blob</item>-		<item>BufferSource</item>-		<item>ByteString</item>-		<item>CSS</item>-		<item>CSSConditionRule</item>-		<item>CSSCounterStyleRule</item>-		<item>CSSGroupingRule</item>-		<item>CSSMatrix</item>-		<item>CSSMediaRule</item>-		<item>CSSPageRule</item>-		<item>CSSPrimitiveValue</item>-		<item>CSSRule</item>-		<item>CSSRuleList</item>-		<item>CSSStyleDeclaration</item>-		<item>CSSStyleRule</item>-		<item>CSSStyleSheet</item>-		<item>CSSSupportsRule</item>-		<item>CSSValue</item>-		<item>CSSValueList</item>-		<item>CanvasGradient</item>-		<item>CanvasImageSource</item>-		<item>CanvasPattern</item>-		<item>CanvasRenderingContext2D</item>-		<item>ChannelMergerNode</item>-		<item>ChannelSplitterNode</item>-		<item>CharacterData</item>-		<item>ChromeWorker</item>-		<item>CloseEvent</item>-		<item>Comment</item>-		<item>CompositionEvent</item>-		<item>Console</item>-		<item>ConvolverNode</item>-		<item>Coordinates</item>-		<item>Credential</item>-		<item>CredentialsContainer</item>-		<item>Crypto</item>-		<item>CryptoKey</item>-		<item>CustomEvent</item>-		<item>DOMError</item>-		<item>DOMException</item>-		<item>DOMHighResTimeStamp</item>-		<item>DOMImplementation</item>-		<item>DOMString</item>-		<item>DOMStringList</item>-		<item>DOMStringMap</item>-		<item>DOMTimeStamp</item>-		<item>DOMTokenList</item>-		<item>DataTransfer</item>-		<item>DataTransferItem</item>-		<item>DataTransferItemList</item>-		<item>DedicatedWorkerGlobalScope</item>-		<item>DelayNode</item>-		<item>DeviceProximityEvent</item>-		<item>DirectoryEntry</item>-		<item>DirectoryEntrySync</item>-		<item>DirectoryReader</item>-		<item>DirectoryReaderSync</item>-		<item>Document</item>-		<item>DocumentFragment</item>-		<item>DocumentTouch</item>-		<item>DocumentType</item>-		<item>DragEvent</item>-		<item>DynamicsCompressorNode</item>-		<item>Element</item>-		<item>Entry</item>-		<item>EntrySync</item>-		<item>ErrorEvent</item>-		<item>Event</item>-		<item>EventListener</item>-		<item>EventSource</item>-		<item>EventTarget</item>-		<item>FederatedCredential</item>-		<item>FetchEvent</item>-		<item>File</item>-		<item>FileEntry</item>-		<item>FileEntrySync</item>-		<item>FileException</item>-		<item>FileList</item>-		<item>FileReader</item>-		<item>FileReaderSync</item>-		<item>FileSystem</item>-		<item>FileSystemSync</item>-		<item>FontFace</item>-		<item>FormData</item>-		<item>GainNode</item>-		<item>Gamepad</item>-		<item>GamepadButton</item>-		<item>GamepadEvent</item>-		<item>Geolocation</item>-		<item>GlobalEventHandlers</item>-		<item>HTMLAnchorElement</item>-		<item>HTMLAreaElement</item>-		<item>HTMLAudioElement</item>-		<item>HTMLBRElement</item>-		<item>HTMLBaseElement</item>-		<item>HTMLBodyElement</item>-		<item>HTMLButtonElement</item>-		<item>HTMLCanvasElement</item>-		<item>HTMLCollection</item>-		<item>HTMLContentElement</item>-		<item>HTMLDListElement</item>-		<item>HTMLDataElement</item>-		<item>HTMLDataListElement</item>-		<item>HTMLDialogElement</item>-		<item>HTMLDivElement</item>-		<item>HTMLDocument</item>-		<item>HTMLElement</item>-		<item>HTMLEmbedElement</item>-		<item>HTMLFieldSetElement</item>-		<item>HTMLFontElement</item>-		<item>HTMLFormControlsCollection</item>-		<item>HTMLFormElement</item>-		<item>HTMLHRElement</item>-		<item>HTMLHeadElement</item>-		<item>HTMLHeadingElement</item>-		<item>HTMLHtmlElement</item>-		<item>HTMLIFrameElement</item>-		<item>HTMLImageElement</item>-		<item>HTMLInputElement</item>-		<item>HTMLKeygenElement</item>-		<item>HTMLLIElement</item>-		<item>HTMLLabelElement</item>-		<item>HTMLLegendElement</item>-		<item>HTMLLinkElement</item>-		<item>HTMLMapElement</item>-		<item>HTMLMediaElement</item>-		<item>HTMLMetaElement</item>-		<item>HTMLMeterElement</item>-		<item>HTMLModElement</item>-		<item>HTMLOListElement</item>-		<item>HTMLObjectElement</item>-		<item>HTMLOptGroupElement</item>-		<item>HTMLOptionElement</item>-		<item>HTMLOptionsCollection</item>-		<item>HTMLOutputElement</item>-		<item>HTMLParagraphElement</item>-		<item>HTMLParamElement</item>-		<item>HTMLPreElement</item>-		<item>HTMLProgressElement</item>-		<item>HTMLQuoteElement</item>-		<item>HTMLScriptElement</item>-		<item>HTMLSelectElement</item>-		<item>HTMLShadowElement</item>-		<item>HTMLSourceElement</item>-		<item>HTMLSpanElement</item>-		<item>HTMLStyleElement</item>-		<item>HTMLTableCaptionElement</item>-		<item>HTMLTableCellElement</item>-		<item>HTMLTableColElement</item>-		<item>HTMLTableDataCellElement</item>-		<item>HTMLTableElement</item>-		<item>HTMLTableHeaderCellElement</item>-		<item>HTMLTableRowElement</item>-		<item>HTMLTableSectionElement</item>-		<item>HTMLTextAreaElement</item>-		<item>HTMLTimeElement</item>-		<item>HTMLTitleElement</item>-		<item>HTMLTrackElement</item>-		<item>HTMLUListElement</item>-		<item>HTMLUnknownElement</item>-		<item>HTMLVideoElement</item>-		<item>HashChangeEvent</item>-		<item>History</item>-		<item>IDBCursor</item>-		<item>IDBCursorWithValue</item>-		<item>IDBDatabase</item>-		<item>IDBEnvironment</item>-		<item>IDBFactory</item>-		<item>IDBIndex</item>-		<item>IDBKeyRange</item>-		<item>IDBMutableFile</item>-		<item>IDBObjectStore</item>-		<item>IDBOpenDBRequest</item>-		<item>IDBRequest</item>-		<item>IDBTransaction</item>-		<item>IDBVersionChangeEvent</item>-		<item>IIRFilterNode</item>-		<item>IdentityManager</item>-		<item>ImageBitmap</item>-		<item>ImageBitmapFactories</item>-		<item>ImageData</item>-		<item>Index</item>-		<item>InputDeviceCapabilities</item>-		<item>InputEvent</item>-		<item>InstallEvent</item>-		<item>InstallTrigger</item>-		<item>KeyboardEvent</item>-		<item>LinkStyle</item>-		<item>LocalFileSystem</item>-		<item>LocalFileSystemSync</item>-		<item>Location</item>-		<item>MIDIAccess</item>-		<item>MIDIConnectionEvent</item>-		<item>MIDIInput</item>-		<item>MIDIInputMap</item>-		<item>MIDIOutputMap</item>-		<item>MediaElementAudioSourceNode</item>-		<item>MediaError</item>-		<item>MediaKeyMessageEvent</item>-		<item>MediaKeySession</item>-		<item>MediaKeyStatusMap</item>-		<item>MediaKeySystemAccess</item>-		<item>MediaKeySystemConfiguration</item>-		<item>MediaKeys</item>-		<item>MediaRecorder</item>-		<item>MediaStream</item>-		<item>MediaStreamAudioDestinationNode</item>-		<item>MediaStreamAudioSourceNode</item>-		<item>MessageChannel</item>-		<item>MessageEvent</item>-		<item>MessagePort</item>-		<item>MouseEvent</item>-		<item>MutationObserver</item>-		<item>MutationRecord</item>-		<item>NamedNodeMap</item>-		<item>Navigator</item>-		<item>NavigatorConcurrentHardware</item>-		<item>NavigatorGeolocation</item>-		<item>NavigatorID</item>-		<item>NavigatorLanguage</item>-		<item>NavigatorOnLine</item>-		<item>Node</item>-		<item>NodeFilter</item>-		<item>NodeIterator</item>-		<item>NodeList</item>-		<item>NonDocumentTypeChildNode</item>-		<item>Notification</item>-		<item>OfflineAudioCompletionEvent</item>-		<item>OfflineAudioContext</item>-		<item>OscillatorNode</item>-		<item>PageTransitionEvent</item>-		<item>PannerNode</item>-		<item>ParentNode</item>-		<item>PasswordCredential</item>-		<item>Path2D</item>-		<item>PaymentAddress</item>-		<item>PaymentRequest</item>-		<item>PaymentResponse</item>-		<item>Performance</item>-		<item>PerformanceEntry</item>-		<item>PerformanceFrameTiming</item>-		<item>PerformanceMark</item>-		<item>PerformanceMeasure</item>-		<item>PerformanceNavigation</item>-		<item>PerformanceNavigationTiming</item>-		<item>PerformanceObserver</item>-		<item>PerformanceObserverEntryList</item>-		<item>PerformanceResourceTiming</item>-		<item>PerformanceTiming</item>-		<item>PeriodicSyncEvent</item>-		<item>PeriodicWave</item>-		<item>Plugin</item>-		<item>Point</item>-		<item>PointerEvent</item>-		<item>PopStateEvent</item>-		<item>PortCollection</item>-		<item>Position</item>-		<item>PositionError</item>-		<item>PositionOptions</item>-		<item>PresentationConnectionClosedEvent</item>-		<item>PresentationConnectionList</item>-		<item>PresentationReceiver</item>-		<item>ProcessingInstruction</item>-		<item>ProgressEvent</item>-		<item>PromiseRejectionEvent</item>-		<item>PushEvent</item>-		<item>PushRegistrationManager</item>-		<item>RTCCertificate</item>-		<item>RTCConfiguration</item>-		<item>RTCPeerConnection</item>-		<item>RTCSessionDescriptionCallback</item>-		<item>RTCStatsReport</item>-		<item>RadioNodeList</item>-		<item>RandomSource</item>-		<item>Range</item>-		<item>ReadableByteStream</item>-		<item>RenderingContext</item>-		<item>SVGAElement</item>-		<item>SVGAngle</item>-		<item>SVGAnimateColorElement</item>-		<item>SVGAnimateElement</item>-		<item>SVGAnimateMotionElement</item>-		<item>SVGAnimateTransformElement</item>-		<item>SVGAnimatedAngle</item>-		<item>SVGAnimatedBoolean</item>-		<item>SVGAnimatedEnumeration</item>-		<item>SVGAnimatedInteger</item>-		<item>SVGAnimatedLength</item>-		<item>SVGAnimatedLengthList</item>-		<item>SVGAnimatedNumber</item>-		<item>SVGAnimatedNumberList</item>-		<item>SVGAnimatedPoints</item>-		<item>SVGAnimatedPreserveAspectRatio</item>-		<item>SVGAnimatedRect</item>-		<item>SVGAnimatedString</item>-		<item>SVGAnimatedTransformList</item>-		<item>SVGAnimationElement</item>-		<item>SVGCircleElement</item>-		<item>SVGClipPathElement</item>-		<item>SVGCursorElement</item>-		<item>SVGDefsElement</item>-		<item>SVGDescElement</item>-		<item>SVGElement</item>-		<item>SVGEllipseElement</item>-		<item>SVGEvent</item>-		<item>SVGFilterElement</item>-		<item>SVGFontElement</item>-		<item>SVGFontFaceElement</item>-		<item>SVGFontFaceFormatElement</item>-		<item>SVGFontFaceNameElement</item>-		<item>SVGFontFaceSrcElement</item>-		<item>SVGFontFaceUriElement</item>-		<item>SVGForeignObjectElement</item>-		<item>SVGGElement</item>-		<item>SVGGlyphElement</item>-		<item>SVGGradientElement</item>-		<item>SVGHKernElement</item>-		<item>SVGImageElement</item>-		<item>SVGLength</item>-		<item>SVGLengthList</item>-		<item>SVGLineElement</item>-		<item>SVGLinearGradientElement</item>-		<item>SVGMPathElement</item>-		<item>SVGMaskElement</item>-		<item>SVGMatrix</item>-		<item>SVGMissingGlyphElement</item>-		<item>SVGNumber</item>-		<item>SVGNumberList</item>-		<item>SVGPathElement</item>-		<item>SVGPatternElement</item>-		<item>SVGPoint</item>-		<item>SVGPolygonElement</item>-		<item>SVGPolylineElement</item>-		<item>SVGPreserveAspectRatio</item>-		<item>SVGRadialGradientElement</item>-		<item>SVGRect</item>-		<item>SVGRectElement</item>-		<item>SVGSVGElement</item>-		<item>SVGScriptElement</item>-		<item>SVGSetElement</item>-		<item>SVGStopElement</item>-		<item>SVGStringList</item>-		<item>SVGStylable</item>-		<item>SVGStyleElement</item>-		<item>SVGSwitchElement</item>-		<item>SVGSymbolElement</item>-		<item>SVGTRefElement</item>-		<item>SVGTSpanElement</item>-		<item>SVGTests</item>-		<item>SVGTextElement</item>-		<item>SVGTextPositioningElement</item>-		<item>SVGTitleElement</item>-		<item>SVGTransform</item>-		<item>SVGTransformList</item>-		<item>SVGTransformable</item>-		<item>SVGUseElement</item>-		<item>SVGVKernElement</item>-		<item>SVGViewElement</item>-		<item>ServiceWorker</item>-		<item>ServiceWorkerContainer</item>-		<item>ServiceWorkerGlobalScope</item>-		<item>ServiceWorkerRegistration</item>-		<item>ServiceWorkerState</item>-		<item>ShadowRoot</item>-		<item>SharedWorker</item>-		<item>SharedWorkerGlobalScope</item>-		<item>SourceBufferList</item>-		<item>StereoPannerNode</item>-		<item>Storage</item>-		<item>StorageEvent</item>-		<item>StyleSheet</item>-		<item>StyleSheetList</item>-		<item>SubtleCrypto</item>-		<item>SyncEvent</item>-		<item>Text</item>-		<item>TextMetrics</item>-		<item>TimeEvent</item>-		<item>TimeRanges</item>-		<item>Touch</item>-		<item>TouchEvent</item>-		<item>TouchList</item>-		<item>Transferable</item>-		<item>TreeWalker</item>-		<item>UIEvent</item>-		<item>USVString</item>-		<item>VRDisplayCapabilities</item>-		<item>ValidityState</item>-		<item>WaveShaperNode</item>-		<item>WebGL</item>-		<item>WebGLActiveInfo</item>-		<item>WebGLBuffer</item>-		<item>WebGLContextEvent</item>-		<item>WebGLFramebuffer</item>-		<item>WebGLProgram</item>-		<item>WebGLRenderbuffer</item>-		<item>WebGLRenderingContext</item>-		<item>WebGLShader</item>-		<item>WebGLShaderPrecisionFormat</item>-		<item>WebGLTexture</item>-		<item>WebGLTimerQueryEXT</item>-		<item>WebGLTransformFeedback</item>-		<item>WebGLUniformLocation</item>-		<item>WebGLVertexArrayObject</item>-		<item>WebGLVertexArrayObjectOES</item>-		<item>WebSocket</item>-		<item>WebSockets</item>-		<item>WebVTT</item>-		<item>WheelEvent</item>-		<item>Window</item>-		<item>WindowBase64</item>-		<item>WindowEventHandlers</item>-		<item>WindowTimers</item>-		<item>Worker</item>-		<item>WorkerGlobalScope</item>-		<item>WorkerLocation</item>-		<item>WorkerNavigator</item>-		<item>XMLHttpRequest</item>-		<item>XMLHttpRequestEventTarget</item>-		<item>XMLSerializer</item>-		<item>XPathExpression</item>-		<item>XPathResult</item>-		<item>XSLTProcessor</item>-	</list>-	<!-- Node.js Classes -->-	<list name="class_node">-		<item>Buffer</item>-		<item>EventEmitter</item>-		<item>Server</item>-		<item>Pipe</item>-		<item>Socket</item>-		<item>REPLServer</item>-		<item>ReadStream</item>-		<item>WriteStream</item>-		<item>Stream</item>-		<item>Inflate</item>-		<item>Deflate</item>-		<item>InflateRaw</item>-		<item>DeflateRaw</item>-		<item>GZip</item>-		<item>GUnzip</item>-		<item>Unzip</item>-		<item>Zip</item>-	</list>-	<!-- General Properties of Classes -->-	<list name="variable_property">-		<item>constructor</item>-		<item>length</item>-		<item>prototype</item>-		<item>__proto__</item>-		<item>EPSILON</item>-		<item>MAX_SAFE_INTEGER</item>-		<item>MAX_VALUE</item>-		<item>MIN_SAFE_INTEGER</item>-		<item>MIN_VALUE</item>-		<item>NEGATIVE_INFINITY</item>-		<item>POSITIVE_INFINITY</item>-	</list>-	<!-- General Built-in Functions -->-	<list name="functions">-		<item>clearInterval</item>-		<item>clearTimeout</item>-		<item>decodeURI</item>-		<item>decodeURIComponent</item>-		<item>encodeURI</item>-		<item>encodeURIComponent</item>-		<item>escape</item>-		<item>eval</item>-		<item>isFinite</item>-		<item>isNaN</item>-		<item>parseFloat</item>-		<item>parseInt</item>-		<item>require</item>-		<item>setTimeout</item>-		<item>setInterval</item>-		<item>super</item>-		<item>unescape</item>-		<item>uneval</item>-	</list>-	<!-- Methods of Math Class -->-	<list name="math_functions">-		<item>abs</item>-		<item>acos</item>-		<item>acosh</item>-		<item>asin</item>-		<item>asinh</item>-		<item>atan</item>-		<item>atan2</item>-		<item>atanh</item>-		<item>cbrt</item>-		<item>ceil</item>-		<item>clz32</item>-		<item>cos</item>-		<item>cosh</item>-		<item>exp</item>-		<item>expm1</item>-		<item>floor</item>-		<item>fround</item>-		<item>hypot</item>-		<item>imul</item>-		<item>log</item>-		<item>log10</item>-		<item>log1p</item>-		<item>log2</item>-		<item>max</item>-		<item>min</item>-		<item>pow</item>-		<item>random</item>-		<item>round</item>-		<item>sign</item>-		<item>sin</item>-		<item>sinh</item>-		<item>sqrt</item>-		<item>tan</item>-		<item>tanh</item>-		<item>trunc</item>-	</list>-	<!-- Constants of Math Class-->-	<list name="math_property_constants">-		<item>E</item>-		<item>LN10</item>-		<item>LN2</item>-		<item>LOG10E</item>-		<item>LOG2E</item>-		<item>PI</item>-		<item>SQRT1_2</item>-		<item>SQRT2</item>-	</list>-	<!-- Functions of "console" -->-	<list name="console_functions">-		<item>assert</item>-		<item>clear</item>-		<item>count</item>-		<item>debug</item>-		<item>dir</item>-		<item>error</item>-		<item>group</item>-		<item>groupCollapsed</item>-		<item>groupEnd</item>-		<item>info</item>-		<item>log</item>-		<item>profile</item>-		<item>profileEnd</item>-		<item>table</item>-		<item>time</item>-		<item>timeEnd</item>-		<item>timeStamp</item>-		<item>trace</item>-		<item>warn</item>-	</list>-	<!-- Methods of JSON Class -->-	<list name="json_functions">-		<item>parse</item>-		<item>stringify</item>-	</list>-	<!-- Attributes of Node.js Classes -->-	<list name="node_object">-		<item>global</item>-		<item>GLOBAL</item>-		<item>root</item>-		<item>__dirname</item>-		<item>__filename</item>-	</list>-	<!-- Properties of "process" -->-	<list name="process_property">-		<item>arch</item>-		<item>argv</item>-		<item>config</item>-		<item>connected</item>-		<item>env</item>-		<item>execArgv</item>-		<item>execPath</item>-		<item>exitCode</item>-		<item>mainModule</item>-		<item>pid</item>-		<item>platform</item>-		<item>release</item>-		<item>stderr</item>-		<item>stdin</item>-		<item>stdout</item>-		<item>title</item>-		<item>version</item>-		<item>versions</item>-	</list>-	<!-- Functions of "process" -->-	<list name="process_functions">-		<item>abort</item>-		<item>chdir</item>-		<item>cwd</item>-		<item>disconnect</item>-		<item>exit</item>-		<item>setegid</item>-		<item>seteuid</item>-		<item>getegid</item>-		<item>geteuid</item>-		<item>setgid</item>-		<item>setuid</item>-		<item>getgid</item>-		<item>getuid</item>-		<item>send</item>-		<item>setgroups</item>-		<item>getgroups</item>-		<item>initgroups</item>-		<item>kill</item>-		<item>memoryUsage</item>-		<item>nextTick</item>-		<item>umask</item>-		<item>uptime</item>-		<item>hrtime</item>-	</list>-	<!-- Methods of Promise Class -->-	<list name="promise_functions">-		<item>all</item>-		<item>catch</item>-		<item>finally</item>-		<item>race</item>-		<item>reject</item>-		<item>resolve</item>-		<item>then</item>-	</list>-	<!-- DOM Variables -->-	<list name="dom_variable">-		<item>document</item>-		<item>event</item>-		<item>navigator</item>-		<item>performance</item>-		<item>screen</item>-		<item>window</item>-	</list>-	<!-- Constants of DOM Classes -->-	<list name="dom_constant">-		<item>ATTRIBUTE_NODE</item>-		<item>CDATA_SECTION_NODE</item>-		<item>COMMENT_NODE</item>-		<item>DOCUMENT_FRAGMENT_NODE</item>-		<item>DOCUMENT_NODE</item>-		<item>DOCUMENT_TYPE_NODE</item>-		<item>DOMSTRING_SIZE_ERR</item>-		<item>ELEMENT_NODE</item>-		<item>ENTITY_NODE</item>-		<item>ENTITY_REFERENCE_NODE</item>-		<item>HIERARCHY_REQUEST_ERR</item>-		<item>INDEX_SIZE_ERR</item>-		<item>INUSE_ATTRIBUTE_ERR</item>-		<item>INVALID_CHARACTER_ERR</item>-		<item>NO_DATA_ALLOWED_ERR</item>-		<item>NO_MODIFICATION_ALLOWED_ERR</item>-		<item>NOT_FOUND_ERR</item>-		<item>NOT_SUPPORTED_ERR</item>-		<item>NOTATION_NODE</item>-		<item>PROCESSING_INSTRUCTION_NODE</item>-		<item>TEXT_NODE</item>-		<item>WRONG_DOCUMENT_ERR</item>-	</list>-	<!-- Properties of DOM Classes -->-	<list name="dom_property">-		<item>_content</item>-		<item>x</item>-		<item>y</item>-		<item>z</item>-		<item>abbr</item>-		<item>above</item>-		<item>accept</item>-		<item>acceptCharset</item>-		<item>accessKey</item>-		<item>action</item>-		<item>align</item>-		<item>aLink</item>-		<item>vLink</item>-		<item>aLinkcolor</item>-		<item>vLinkcolor</item>-		<item>all</item>-		<item>alt</item>-		<item>anchors</item>-		<item>appCodeName</item>-		<item>appCore</item>-		<item>applets</item>-		<item>appMinorVersion</item>-		<item>appName</item>-		<item>appVersion</item>-		<item>archive</item>-		<item>areas</item>-		<item>arguments</item>-		<item>attributes</item>-		<item>availHeight</item>-		<item>availLeft</item>-		<item>availTop</item>-		<item>availWidth</item>-		<item>axis</item>-		<item>background</item>-		<item>backgroundColor</item>-		<item>backgroundImage</item>-		<item>below</item>-		<item>bgColor</item>-		<item>body</item>-		<item>border</item>-		<item>borderBottomWidth</item>-		<item>borderColor</item>-		<item>borderLeftWidth</item>-		<item>borderRightWidth</item>-		<item>borderStyle</item>-		<item>borderTopWidth</item>-		<item>borderWidth</item>-		<item>bottom</item>-		<item>bufferDepth</item>-		<item>callee</item>-		<item>caller</item>-		<item>caption</item>-		<item>cellPadding</item>-		<item>cells</item>-		<item>cellSpacing</item>-		<item>ch</item>-		<item>characterSet</item>-		<item>charset</item>-		<item>checked</item>-		<item>childNodes</item>-		<item>chOff</item>-		<item>cite</item>-		<item>classes</item>-		<item>className</item>-		<item>clear</item>-		<item>clientInformation</item>-		<item>clip</item>-		<item>clipBoardData</item>-		<item>closed</item>-		<item>code</item>-		<item>codeBase</item>-		<item>codeType</item>-		<item>color</item>-		<item>colorDepth</item>-		<item>cols</item>-		<item>colSpan</item>-		<item>compact</item>-		<item>complete</item>-		<item>components</item>-		<item>content</item>-		<item>controllers</item>-		<item>cookie</item>-		<item>cookieEnabled</item>-		<item>cords</item>-		<item>cpuClass</item>-		<item>crypto</item>-		<item>current</item>-		<item>data</item>-		<item>dateTime</item>-		<item>declare</item>-		<item>defaultCharset</item>-		<item>defaultChecked</item>-		<item>defaultSelected</item>-		<item>defaultStatus</item>-		<item>defaultValue</item>-		<item>defaultView</item>-		<item>defer</item>-		<item>description</item>-		<item>dialogArguments</item>-		<item>dialogHeight</item>-		<item>dialogLeft</item>-		<item>dialogTop</item>-		<item>dialogWidth</item>-		<item>dir</item>-		<item>directories</item>-		<item>disabled</item>-		<item>display</item>-		<item>docmain</item>-		<item>doctype</item>-		<item>documentElement</item>-		<item>elements</item>-		<item>embeds</item>-		<item>enabledPlugin</item>-		<item>encoding</item>-		<item>enctype</item>-		<item>entities</item>-		<item>event</item>-		<item>expando</item>-		<item>external</item>-		<item>face</item>-		<item>fgColor</item>-		<item>filename</item>-		<item>firstChild</item>-		<item>fontFamily</item>-		<item>fontSize</item>-		<item>fontWeight</item>-		<item>form</item>-		<item>formName</item>-		<item>forms</item>-		<item>frame</item>-		<item>frameBorder</item>-		<item>frameElement</item>-		<item>frames</item>-		<item>hasFocus</item>-		<item>hash</item>-		<item>headers</item>-		<item>height</item>-		<item>history</item>-		<item>host</item>-		<item>hostname</item>-		<item>href</item>-		<item>hreflang</item>-		<item>hspace</item>-		<item>htmlFor</item>-		<item>httpEquiv</item>-		<item>id</item>-		<item>ids</item>-		<item>ignoreCase</item>-		<item>images</item>-		<item>implementation</item>-		<item>index</item>-		<item>innerHeight</item>-		<item>innerWidth</item>-		<item>input</item>-		<item>isMap</item>-		<item>label</item>-		<item>lang</item>-		<item>language</item>-		<item>lastChild</item>-		<item>lastIndex</item>-		<item>lastMatch</item>-		<item>lastModified</item>-		<item>lastParen</item>-		<item>layers</item>-		<item>layerX</item>-		<item>layerY</item>-		<item>left</item>-		<item>leftContext</item>-		<item>lineHeight</item>-		<item>link</item>-		<item>linkColor</item>-		<item>links</item>-		<item>listStyleType</item>-		<item>localName</item>-		<item>location</item>-		<item>locationbar</item>-		<item>longDesc</item>-		<item>lowsrc</item>-		<item>lowSrc</item>-		<item>marginBottom</item>-		<item>marginHeight</item>-		<item>marginLeft</item>-		<item>marginRight</item>-		<item>marginTop</item>-		<item>marginWidth</item>-		<item>maxLength</item>-		<item>media</item>-		<item>menubar</item>-		<item>method</item>-		<item>mimeTypes</item>-		<item>multiline</item>-		<item>multiple</item>-		<item>name</item>-		<item>nameProp</item>-		<item>namespaces</item>-		<item>namespaceURI</item>-		<item>next</item>-		<item>nextSibling</item>-		<item>nodeName</item>-		<item>nodeType</item>-		<item>nodeValue</item>-		<item>noHref</item>-		<item>noResize</item>-		<item>noShade</item>-		<item>notationName</item>-		<item>notations</item>-		<item>noWrap</item>-		<item>object</item>-		<item>offscreenBuffering</item>-		<item>onLine</item>-		<item>onreadystatechange</item>-		<item>opener</item>-		<item>opsProfile</item>-		<item>options</item>-		<item>oscpu</item>-		<item>outerHeight</item>-		<item>outerWidth</item>-		<item>ownerDocument</item>-		<item>paddingBottom</item>-		<item>paddingLeft</item>-		<item>paddingRight</item>-		<item>paddingTop</item>-		<item>pageX</item>-		<item>pageY</item>-		<item>pageXOffset</item>-		<item>pageYOffset</item>-		<item>parent</item>-		<item>parentLayer</item>-		<item>parentNode</item>-		<item>parentWindow</item>-		<item>pathname</item>-		<item>personalbar</item>-		<item>pixelDepth</item>-		<item>pkcs11</item>-		<item>platform</item>-		<item>plugins</item>-		<item>port</item>-		<item>prefix</item>-		<item>previous</item>-		<item>previousDibling</item>-		<item>product</item>-		<item>productSub</item>-		<item>profile</item>-		<item>profileend</item>-		<item>prompt</item>-		<item>prompter</item>-		<item>protocol</item>-		<item>publicId</item>-		<item>readOnly</item>-		<item>readyState</item>-		<item>referrer</item>-		<item>rel</item>-		<item>responseText</item>-		<item>responseXML</item>-		<item>rev</item>-		<item>right</item>-		<item>rightContext</item>-		<item>rowIndex</item>-		<item>rows</item>-		<item>rowSpan</item>-		<item>rules</item>-		<item>scheme</item>-		<item>scope</item>-		<item>screenX</item>-		<item>screenY</item>-		<item>screenLeft</item>-		<item>screenTop</item>-		<item>scripts</item>-		<item>scrollbars</item>-		<item>scrolling</item>-		<item>sectionRowIndex</item>-		<item>security</item>-		<item>securityPolicy</item>-		<item>selected</item>-		<item>selectedIndex</item>-		<item>selection</item>-		<item>self</item>-		<item>shape</item>-		<item>siblingAbove</item>-		<item>siblingBelow</item>-		<item>size</item>-		<item>source</item>-		<item>specified</item>-		<item>standby</item>-		<item>start</item>-		<item>status</item>-		<item>statusbar</item>-		<item>statusText</item>-		<item>style</item>-		<item>styleSheets</item>-		<item>suffixes</item>-		<item>summary</item>-		<item>systemId</item>-		<item>systemLanguage</item>-		<item>tagName</item>-		<item>tags</item>-		<item>target</item>-		<item>tBodies</item>-		<item>text</item>-		<item>textAlign</item>-		<item>textDecoration</item>-		<item>textIndent</item>-		<item>textTransform</item>-		<item>tFoot</item>-		<item>tHead</item>-		<item>title</item>-		<item>toolbar</item>-		<item>top</item>-		<item>type</item>-		<item>undefined</item>-		<item>uniqueID</item>-		<item>updateInterval</item>-		<item>URL</item>-		<item>URLUnencoded</item>-		<item>useMap</item>-		<item>userAgent</item>-		<item>userLanguage</item>-		<item>userProfile</item>-		<item>vAlign</item>-		<item>value</item>-		<item>valueType</item>-		<item>vendor</item>-		<item>vendorSub</item>-		<item>version</item>-		<item>visibility</item>-		<item>vspace</item>-		<item>whiteSpace</item>-		<item>width</item>-		<item>XMLDocument</item>-		<item>XSLDocument</item>-		<item>zIndex</item>-	</list>-	<!-- Methods of DOM Classes -->-	<list name="dom_functions">-		<item>acceptNode</item>-		<item>add</item>-		<item>addEventListener</item>-		<item>addTextTrack</item>-		<item>adoptNode</item>-		<item>after</item>-		<item>animate</item>-		<item>append</item>-		<item>appendChild</item>-		<item>appendData</item>-		<item>before</item>-		<item>blur</item>-		<item>canPlayType</item>-		<item>captureStream</item>-		<item>caretPositionFromPoint</item>-		<item>caretRangeFromPoint</item>-		<item>checkValidity</item>-		<item>clear</item>-		<item>click</item>-		<item>cloneContents</item>-		<item>cloneNode</item>-		<item>cloneRange</item>-		<item>close</item>-		<item>closest</item>-		<item>collapse</item>-		<item>compareBoundaryPoints</item>-		<item>compareDocumentPosition</item>-		<item>comparePoint</item>-		<item>contains</item>-		<item>convertPointFromNode</item>-		<item>convertQuadFromNode</item>-		<item>convertRectFromNode</item>-		<item>createAttribute</item>-		<item>createAttributeNS</item>-		<item>createCaption</item>-		<item>createCDATASection</item>-		<item>createComment</item>-		<item>createContextualFragment</item>-		<item>createDocument</item>-		<item>createDocumentFragment</item>-		<item>createDocumentType</item>-		<item>createElement</item>-		<item>createElementNS</item>-		<item>createEntityReference</item>-		<item>createEvent</item>-		<item>createExpression</item>-		<item>createHTMLDocument</item>-		<item>createNodeIterator</item>-		<item>createNSResolver</item>-		<item>createProcessingInstruction</item>-		<item>createRange</item>-		<item>createShadowRoot</item>-		<item>createTBody</item>-		<item>createTextNode</item>-		<item>createTFoot</item>-		<item>createTHead</item>-		<item>createTreeWalker</item>-		<item>delete</item>-		<item>deleteCaption</item>-		<item>deleteCell</item>-		<item>deleteContents</item>-		<item>deleteData</item>-		<item>deleteRow</item>-		<item>deleteTFoot</item>-		<item>deleteTHead</item>-		<item>detach</item>-		<item>disconnect</item>-		<item>dispatchEvent</item>-		<item>elementFromPoint</item>-		<item>elementsFromPoint</item>-		<item>enableStyleSheetsForSet</item>-		<item>entries</item>-		<item>evaluate</item>-		<item>execCommand</item>-		<item>exitFullscreen</item>-		<item>exitPointerLock</item>-		<item>expand</item>-		<item>extractContents</item>-		<item>fastSeek</item>-		<item>firstChild</item>-		<item>focus</item>-		<item>forEach</item>-		<item>get</item>-		<item>getAll</item>-		<item>getAnimations</item>-		<item>getAttribute</item>-		<item>getAttributeNames</item>-		<item>getAttributeNode</item>-		<item>getAttributeNodeNS</item>-		<item>getAttributeNS</item>-		<item>getBoundingClientRect</item>-		<item>getBoxQuads</item>-		<item>getClientRects</item>-		<item>getContext</item>-		<item>getDestinationInsertionPoints</item>-		<item>getElementById</item>-		<item>getElementsByClassName</item>-		<item>getElementsByName</item>-		<item>getElementsByTagName</item>-		<item>getElementsByTagNameNS</item>-		<item>getItem</item>-		<item>getNamedItem</item>-		<item>getSelection</item>-		<item>getStartDate</item>-		<item>getVideoPlaybackQuality</item>-		<item>has</item>-		<item>hasAttribute</item>-		<item>hasAttributeNS</item>-		<item>hasAttributes</item>-		<item>hasChildNodes</item>-		<item>hasFeature</item>-		<item>hasFocus</item>-		<item>importNode</item>-		<item>initEvent</item>-		<item>insertAdjacentElement</item>-		<item>insertAdjacentHTML</item>-		<item>insertAdjacentText</item>-		<item>insertBefore</item>-		<item>insertCell</item>-		<item>insertData</item>-		<item>insertNode</item>-		<item>insertRow</item>-		<item>intersectsNode</item>-		<item>isDefaultNamespace</item>-		<item>isEqualNode</item>-		<item>isPointInRange</item>-		<item>isSameNode</item>-		<item>item</item>-		<item>key</item>-		<item>keys</item>-		<item>lastChild</item>-		<item>load</item>-		<item>lookupNamespaceURI</item>-		<item>lookupPrefix</item>-		<item>matches</item>-		<item>move</item>-		<item>moveAttribute</item>-		<item>moveAttributeNode</item>-		<item>moveChild</item>-		<item>moveNamedItem</item>-		<item>namedItem</item>-		<item>nextNode</item>-		<item>nextSibling</item>-		<item>normalize</item>-		<item>observe</item>-		<item>open</item>-		<item>parentNode</item>-		<item>pause</item>-		<item>play</item>-		<item>postMessage</item>-		<item>prepend</item>-		<item>preventDefault</item>-		<item>previousNode</item>-		<item>previousSibling</item>-		<item>probablySupportsContext</item>-		<item>queryCommandEnabled</item>-		<item>queryCommandIndeterm</item>-		<item>queryCommandState</item>-		<item>queryCommandSupported</item>-		<item>queryCommandValue</item>-		<item>querySelector</item>-		<item>querySelectorAll</item>-		<item>registerContentHandler</item>-		<item>registerElement</item>-		<item>registerProtocolHandler</item>-		<item>releaseCapture</item>-		<item>releaseEvents</item>-		<item>remove</item>-		<item>removeAttribute</item>-		<item>removeAttributeNode</item>-		<item>removeAttributeNS</item>-		<item>removeChild</item>-		<item>removeEventListener</item>-		<item>removeItem</item>-		<item>replace</item>-		<item>replaceChild</item>-		<item>replaceData</item>-		<item>replaceWith</item>-		<item>reportValidity</item>-		<item>requestFullscreen</item>-		<item>requestPointerLock</item>-		<item>reset</item>-		<item>scroll</item>-		<item>scrollBy</item>-		<item>scrollIntoView</item>-		<item>scrollTo</item>-		<item>seekToNextFrame</item>-		<item>select</item>-		<item>selectNode</item>-		<item>selectNodeContents</item>-		<item>set</item>-		<item>setAttribute</item>-		<item>setAttributeNode</item>-		<item>setAttributeNodeNS</item>-		<item>setAttributeNS</item>-		<item>setCapture</item>-		<item>setCustomValidity</item>-		<item>setEnd</item>-		<item>setEndAfter</item>-		<item>setEndBefore</item>-		<item>setItem</item>-		<item>setNamedItem</item>-		<item>setRangeText</item>-		<item>setSelectionRange</item>-		<item>setSinkId</item>-		<item>setStart</item>-		<item>setStartAfter</item>-		<item>setStartBefore</item>-		<item>slice</item>-		<item>splitText</item>-		<item>stepDown</item>-		<item>stepUp</item>-		<item>stopImmediatePropagation</item>-		<item>stopPropagation</item>-		<item>submit</item>-		<item>substringData</item>-		<item>supports</item>-		<item>surroundContents</item>-		<item>takeRecords</item>-		<item>terminate</item>-		<item>toBlob</item>-		<item>toDataURL</item>-		<item>toggle</item>-		<item>toString</item>-		<item>values</item>-		<item>write</item>-		<item>writeln</item>-	</list>--	<!-- Event Handler Functions -->-	<list name="function_eventhandler">-		<item>onRowsinserted</item>-		<item>onRowsdelete</item>-		<item>onRowenter</item>-		<item>onRowexit</item>-		<item>onResize</item>-		<item>onResizestart</item>-		<item>onResizeend</item>-		<item>onReset</item>-		<item>onReadystatechange</item>-		<item>onMouseout</item>-		<item>onMouseover</item>-		<item>onMousedown</item>-		<item>onMouseup</item>-		<item>onMousemove</item>-		<item>onBeforecut</item>-		<item>onBeforedeactivate</item>-		<item>onBeforeunload</item>-		<item>onBeforeupdate</item>-		<item>onBeforepaste</item>-		<item>onBeforeprint</item>-		<item>onBeforeeditfocus</item>-		<item>onBeforeactivate</item>-		<item>onBlur</item>-		<item>onScrolltop</item>-		<item>onSubmit</item>-		<item>onSelect</item>-		<item>onSelectstart</item>-		<item>onSelectionchange</item>-		<item>onHover</item>-		<item>onHelp</item>-		<item>onChange</item>-		<item>onContextmenu</item>-		<item>onControlselect</item>-		<item>onCut</item>-		<item>onCellchange</item>-		<item>onClock</item>-		<item>onClose</item>-		<item>onDeactivate</item>-		<item>onDatasetchanged</item>-		<item>onDatasetcomplete</item>-		<item>onDataavailable</item>-		<item>onDrop</item>-		<item>onDrag</item>-		<item>onDragstart</item>-		<item>onDragover</item>-		<item>onDragdrop</item>-		<item>onDragenter</item>-		<item>onDragend</item>-		<item>onDragleave</item>-		<item>onDblclick</item>-		<item>onUnload</item>-		<item>onPaste</item>-		<item>onPropertychange</item>-		<item>onError</item>-		<item>onErrorupdate</item>-		<item>onKeydown</item>-		<item>onKeyup</item>-		<item>onKeypress</item>-		<item>onFocus</item>-		<item>onLoad</item>-		<item>onActivate</item>-		<item>onAfterupdate</item>-		<item>onAfterprint</item>-		<item>onAbort</item>-	</list>-	<!-- Others Methods of Classes -->-	<list name="function_common">-		<item>shift</item>-		<item>showModelessDialog</item>-		<item>showModalDialog</item>-		<item>showHelp</item>-		<item>scroll</item>-		<item>scrollX</item>-		<item>scrollByPages</item>-		<item>scrollByLines</item>-		<item>scrollY</item>-		<item>scrollTo</item>-		<item>stop</item>-		<item>strike</item>-		<item>sizeToContent</item>-		<item>sidebar</item>-		<item>signText</item>-		<item>sort</item>-		<item>sup</item>-		<item>sub</item>-		<item>substr</item>-		<item>substring</item>-		<item>splice</item>-		<item>split</item>-		<item>send</item>-		<item>setMilliseconds</item>-		<item>setSeconds</item>-		<item>setMinutes</item>-		<item>setHours</item>-		<item>setMonth</item>-		<item>setYear</item>-		<item>setFullYear</item>-		<item>setDate</item>-		<item>setUTCMilliseconds</item>-		<item>setUTCSeconds</item>-		<item>setUTCMinutes</item>-		<item>setUTCHours</item>-		<item>setUTCMonth</item>-		<item>setUTCFullYear</item>-		<item>setUTCDate</item>-		<item>setTime</item>-		<item>setHotkeys</item>-		<item>setCursor</item>-		<item>setZOptions</item>-		<item>setActive</item>-		<item>setResizable</item>-		<item>setRequestHeader</item>-		<item>search</item>-		<item>slice</item>-		<item>savePreferences</item>-		<item>small</item>-		<item>home</item>-		<item>handleEvent</item>-		<item>navigate</item>-		<item>char</item>-		<item>charCodeAt</item>-		<item>charAt</item>-		<item>concat</item>-		<item>contextual</item>-		<item>confirm</item>-		<item>compile</item>-		<item>clear</item>-		<item>captureEvents</item>-		<item>call</item>-		<item>createStyleSheet</item>-		<item>createPopup</item>-		<item>createEventObject</item>-		<item>toGMTString</item>-		<item>toUTCString</item>-		<item>toString</item>-		<item>toSource</item>-		<item>toUpperCase</item>-		<item>toLowerCase</item>-		<item>toLocaleString</item>-		<item>test</item>-		<item>taint</item>-		<item>taintEnabled</item>-		<item>indexOf</item>-		<item>italics</item>-		<item>disableExternalCapture</item>-		<item>dump</item>-		<item>detachEvent</item>-		<item>unshift</item>-		<item>untaint</item>-		<item>unwatch</item>-		<item>updateCommands</item>-		<item>join</item>-		<item>javaEnabled</item>-		<item>pop</item>-		<item>push</item>-		<item>plugins.refresh</item>-		<item>paddings</item>-		<item>parse</item>-		<item>print</item>-		<item>prompt</item>-		<item>preference</item>-		<item>enableExternalCapture</item>-		<item>exec</item>-		<item>execScript</item>-		<item>valueOf</item>-		<item>UTC</item>-		<item>find</item>-		<item>file</item>-		<item>fileModifiedDate</item>-		<item>fileSize</item>-		<item>fileCreatedDate</item>-		<item>fileUpdatedDate</item>-		<item>fixed</item>-		<item>fontsize</item>-		<item>fontcolor</item>-		<item>forward</item>-		<item>fromCharCode</item>-		<item>watch</item>-		<item>link</item>-		<item>load</item>-		<item>lastIndexOf</item>-		<item>anchor</item>-		<item>attachEvent</item>-		<item>atob</item>-		<item>apply</item>-		<item>alert</item>-		<item>abort</item>-		<item>routeEvents</item>-		<item>resize</item>-		<item>resizeBy</item>-		<item>resizeTo</item>-		<item>recalc</item>-		<item>returnValue</item>-		<item>replace</item>-		<item>reverse</item>-		<item>reload</item>-		<item>releaseCapture</item>-		<item>releaseEvents</item>-		<item>go</item>-		<item>getMilliseconds</item>-		<item>getSeconds</item>-		<item>getMinutes</item>-		<item>getHours</item>-		<item>getMonth</item>-		<item>getDay</item>-		<item>getYear</item>-		<item>getFullYear</item>-		<item>getTime</item>-		<item>getDate</item>-		<item>getTimezoneOffset</item>-		<item>getUTCMilliseconds</item>-		<item>getUTCSeconds</item>-		<item>getUTCMinutes</item>-		<item>getUTCHours</item>-		<item>getUTCDay</item>-		<item>getUTCMonth</item>-		<item>getUTCFullYear</item>-		<item>getUTCDate</item>-		<item>getAttention</item>-		<item>getSelection</item>-		<item>getResponseHeader</item>-		<item>getAllResponseHeaders</item>-		<item>moveBy</item>-		<item>moveBelow</item>-		<item>moveTo</item>-		<item>moveToAbsolute</item>-		<item>moveAbove</item>-		<item>mergeAttributes</item>-		<item>match</item>-		<item>margins</item>-		<item>btoa</item>-		<item>big</item>-		<item>bold</item>-		<item>borderWidths</item>-		<item>blink</item>-		<item>back</item>-	</list>--	<contexts>--		<context name="Shebang" attribute="Normal Text" lineEndContext="Normal" lineEmptyContext="Normal" fallthrough="true" fallthroughContext="Normal">-			<Detect2Chars context="ShebangLine" attribute="Comment" char="#" char1="!" column="0" />-		</context>-		<context name="ShebangLine" attribute="Comment" lineEndContext="#pop!Normal" />--		<context name="Normal" attribute="Normal Text" lineEndContext="#stay">-			<StringDetect context="#stay" attribute="Symbol" String="..." />-			<IncludeRules context="FindNumbers" />-			<IncludeRules context="FindStrings" />--			<!-- Abstract -->-			<RegExpr context="#stay" attribute="Reserved" String="\b(abstract)(?=\s+(class|interface)\b)" />-			<!-- New -->-			<RegExpr context="NewTarget" attribute="Keyword" String="\bnew(?=\s*[\?!]?\.\s*target\b)" />-			<RegExpr context="MemberObject" attribute="Objects" String="\bnew(?=[\?!]?\.)" />-			<WordDetect context="#stay" attribute="Keyword" String="new" />-			<!-- Import -->-			<WordDetect context="Import" attribute="Module" String="import" />-			<!-- Export types -->-			<keyword context="ControlExport" attribute="Module" String="control_export_types" />--			<!-- Keywords -->-			<keyword context="#stay" attribute="ControlFlow" String="controlflow" />-			<RegExpr context="#stay" attribute="ControlFlow" String="\bdefault(?=\s*[\?!]?:)" />-			<RegExpr context="#stay" String="&identifier;(?=\s*[\?!]?:)" />--			<WordDetect context="TypeDeclaration" attribute="Reserved" String="type" />-			<keyword context="#stay" attribute="Module" String="module" />-			<keyword context="#stay" attribute="Keyword" String="keywords" /> <!-- NoRegExp? -->-			<keyword context="#stay" attribute="Reserved" String="reserved" />-			<keyword context="NoRegExp" attribute="Keyword" String="primitives" />-			<keyword context="#stay" attribute="Keyword" String="object_iden" />--			<!-- Built-in Classes -->-			<WordDetect context="FindMemberObjectMath" attribute="Built-in Objects" String="Math" />-			<WordDetect context="FindMemberObjectPromise" attribute="Built-in Objects" String="Promise" />-			<WordDetect context="FindMemberObjectJSON" attribute="Built-in Objects" String="JSON" />-			<WordDetect context="FindMemberObjectConsole" attribute="Built-in Objects" String="console" />-			<WordDetect context="FindMemberObjectProcess" attribute="Built-in Objects" String="process" />-			<keyword context="#stay" attribute="Built-in Objects" String="class_builtin" />-			<keyword context="FindMemberObjectDOM" attribute="Built-in Objects" String="class_dom" />-			<keyword context="FindMemberObjectNode" attribute="Built-in Objects" String="class_node" />-			<keyword context="FindMemberObjectDOM" attribute="Built-in Objects" String="dom_variable" />--			<IncludeRules context="FindFunctionName" />-			<RegExpr context="MemberObject" attribute="Objects" String="&identifier;(?=\s*[\?!]?\.)" />-			<DetectChar context="MemberObject" char="." />--			<keyword context="#stay" attribute="Function Name" String="functions" />--			<DetectChar context="Object" attribute="Symbol" char="{" beginRegion="Brace" />-			<DetectChar context="#stay" attribute="Symbol" char="[" beginRegion="List" />-			<DetectChar context="#stay" attribute="Symbol" char="]" endRegion="List" />-			<DetectChar context="#stay" attribute="Symbol" char="?" /> <!-- Fix of conditional expression from the JavaScript highlighting -->--			<!-- Highlight types after ":" and between "<" and ">" -->-			<DetectChar context="Types" attribute="Symbol" char=":" />-			<RegExpr context="TypesAngleBracket" attribute="Symbol" String="&lt;(?=(&identifier;|[\[\{\(&lt;]).*&gt;)" />--			<IncludeRules context="Normal##JavaScript" />-		</context>--		<context name="Object" attribute="Normal Text" lineEndContext="#stay">-			<DetectChar context="#pop" attribute="Symbol" char="}" endRegion="Brace" />-			<keyword context="NoRegExp" attribute="Keyword" String="keywords" />-			<IncludeRules context="Normal" />-		</context>--		<context name="NoRegExp" attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop">-			<IncludeRules context="NoRegExp##JavaScript" />-		</context>--		<context name="FindNumbers" attribute="Normal Text" lineEndContext="#stay">-			<RegExpr context="NoRegExp" attribute="Hexadecimal" String="\b(0x[\da-f][\da-f_]*)\b" insensitive="true" />-			<RegExpr context="NoRegExp" attribute="Binary" String="\b(0b[01][01_]*)\b" insensitive="true" />-			<RegExpr context="NoRegExp" attribute="Float" String="(\b\d[\d_]*\.?|(\b\d[\d_]*)?\.\d[\d_]*)[eE][\+\-]?\d[\d_]*\b" />-			<RegExpr context="NoRegExp" attribute="Float" String="(\.\d[\d_]*\b|\b\d[\d_]*\.(\d[\d_]*\b)?)" />-			<RegExpr context="NoRegExp" attribute="Octal" String="\b(0o?[0-7][0-7_]*)\b" insensitive="true" />-			<RegExpr context="NoRegExp" attribute="Decimal" String="\b(\d[\d_]*)\b" />-		</context>--		<context name="FindFunctionName" attribute="Normal Text" lineEndContext="#stay">-			<RegExpr context="#stay" attribute="Function Name" String="&identifier;(?=\s*(&lt;((\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|('(\\.|[^'])*')|(&quot;(\\.|[^&quot;])*&quot;)|(`(\\.|[^`])*`)|[^&lt;&gt;]|&lt;.*&gt;)*&gt;)?\()" />-		</context>--		<context name="FindStrings" attribute="Normal Text" lineEndContext="#stay">-			<DetectChar context="Template" attribute="Template" char="`" />-			<IncludeRules context="FindStrings##JavaScript" />-		</context>-		<context name="Template" attribute="Template" lineEndContext="#stay">-			<IncludeRules context="Escape##JavaScript" />-			<Detect2Chars context="Substitution" attribute="Substitution" char="$" char1="{" />-			<DetectChar context="#pop" attribute="Template" char="`" />-		</context>-		<context name="Substitution" attribute="Normal Text" lineEndContext="#stay">-			<DetectChar context="#pop" attribute="Substitution" char="}" />-			<IncludeRules context="Normal" />-		</context>--		<!-- Highlight types after the "type" keyword -->-		<context name="TypeDeclaration" attribute="Normal Text" lineEndContext="#stay">-			<DetectSpaces />-			<IncludeRules context="TypeDeclarationEnd" />-			<IncludeRules context="TypesFindBrackets" />-			<IncludeRules context="DefaultTypes" />-			<IncludeRules context="Normal" />-		</context>-		<context name="TypeDeclarationEnd" attribute="Normal Text" lineEndContext="#stay">-			<AnyChar context="#pop" String=";,{})]" lookAhead="true" />-		</context>--		<!-- Highlight types after ":" -->-		<context name="Types" attribute="Normal Text" lineEndContext="#pop">-			<IncludeRules context="FixPopLineEndContext" />-			<IncludeRules context="TypesCommon" />-		</context>-		<context name="TypesCommon" attribute="Normal Text" lineEndContext="#pop">-			<DetectSpaces />-			<!-- NOTE: The "TypesEnd" context is used by "typescript-react.xml" -->-			<IncludeRules context="TypesEnd" />-			<!-- IMPORTANT: If you modify this rule, do so in "typescript-react.xml"! -->-			<RegExpr context="#pop!TypesNewLine" attribute="Symbol" String="\|(?=\s*($|//|(/\*.*\*/\s*)+$))" />--			<IncludeRules context="TypesFindBrackets" />-			<IncludeRules context="DefaultTypes" />-			<IncludeRules context="Normal" />-		</context>-		<context name="TypesEnd" attribute="Normal Text" lineEndContext="#stay">-			<AnyChar context="#pop" String=";,})]" lookAhead="true" />-			<RegExpr context="#pop" String="\=(?!&gt;)" lookAhead="true" />-			<Detect2Chars context="#pop" char="/" char1="/" lookAhead="true" />-		</context>-		<context name="TypesNewLine" attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop!TypesCommon">-			<DetectSpaces />-			<IncludeRules context="FindComments##JavaScript" />-		</context>--		<!-- NOTE: The "NoRegExp" context invalidates lineEndContext="#pop",-		     therefore the following rule is necessary -->-		<context name="FixPopLineEndContext" attribute="Normal Text" lineEndContext="#stay">-			<RegExpr context="#pop" String="\S" firstNonSpace="true" lookAhead="true" />-		</context>--		<context name="DefaultTypes" attribute="Normal Text" lineEndContext="#stay">-			<keyword context="NoRegExp" attribute="Types/Primitives" String="types_primitives" />-			<RegExpr context="#stay" attribute="Symbol" String="&lt;\s*&gt;" />-		</context>-		<context name="TypesFindBrackets" attribute="Normal Text" lineEndContext="#stay">-			<DetectChar context="TypesSquareBracket" attribute="Symbol" char="[" beginRegion="List" />-			<DetectChar context="TypesCurlyBracket" attribute="Symbol" char="{" beginRegion="Brace" />-			<DetectChar context="TypesRoundBracket" char="(" />-		</context>--		<context name="TypesSquareBracket" attribute="Normal Text" lineEndContext="#stay">-			<DetectChar context="#pop" attribute="Symbol" char="]" endRegion="List" />-			<IncludeRules context="TypesFindBrackets" />-			<IncludeRules context="DefaultTypes" />-			<IncludeRules context="Normal" />-		</context>-		<context name="TypesCurlyBracket" attribute="Normal Text" lineEndContext="#pop!Object">-			<DetectChar context="#pop" attribute="Symbol" char="}" endRegion="Brace" />-			<RegExpr context="#pop!Object" String="\S" firstNonSpace="true" lookAhead="true" /> <!-- FixPopLineEndContext -->-			<IncludeRules context="TypesFindBrackets" />-			<IncludeRules context="DefaultTypes" />-			<IncludeRules context="Object" />-		</context>-		<context name="TypesRoundBracket" attribute="Normal Text" lineEndContext="#pop">-			<DetectChar context="#pop" char=")" />-			<IncludeRules context="FixPopLineEndContext" />-			<IncludeRules context="TypesFindBrackets" />-			<IncludeRules context="DefaultTypes" />-			<IncludeRules context="Normal" />-		</context>--		<context name="TypesAngleBracket" attribute="Normal Text" lineEndContext="#pop">-			<DetectChar context="#pop" attribute="Symbol" char="&gt;" />-			<IncludeRules context="TypesAngleBracketEnd" />-			<IncludeRules context="FixPopLineEndContext" />-			<IncludeRules context="TypesFindBrackets" />-			<IncludeRules context="DefaultTypes" />-			<IncludeRules context="Normal" />-		</context>-		<context name="TypesAngleBracketEnd" attribute="Normal Text" lineEndContext="#stay">-			<AnyChar context="#pop" String="})];" lookAhead="true" />-		</context>--		<!-- new.target -->-		<context name="NewTarget" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">-			<DetectSpaces />-			<AnyChar context="#stay" attribute="Symbol" String=".?!" />-			<WordDetect context="#pop!NoRegExp" attribute="Keyword" String="target" />-		</context>--		<!-- After keyword list "control_export_types" -->-		<context name="ControlExport" attribute="Normal Text" lineEndContext="#pop">-			<AnyChar context="#pop" attribute="Normal Text" String="{;" lookAhead="true" />-			<IncludeRules context="FindStrings" />-			<RegExpr context="#stay" attribute="Types/Primitives" String="&identifier;" />-			<IncludeRules context="FindComments##JavaScript" />-		</context>--		<!-- "import" keyword -->-		<context name="Import" attribute="Normal Text" lineEndContext="#pop">-			<DetectChar context="#pop!ImportRequireKey" attribute="Symbol" char="=" />-			<WordDetect context="#pop!NoRegExp" attribute="Keyword" String="meta" /> <!-- importmeta_property -->-			<IncludeRules context="Normal" />-		</context>-		<context name="ImportRequireKey" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">-			<RegExpr context="#stay" attribute="Keyword" String="\s*\b(require)\s*(?=\()" />-			<DetectChar context="ImportRequire" attribute="Symbol" char="(" beginRegion="import" />-		</context>-		<context name="ImportRequire" attribute="Normal Text" lineEndContext="#stay">-			<DetectChar context="#pop#pop" attribute="Symbol" char=")" endRegion="import" />-			<IncludeRules context="FindStrings" />-			<IncludeRules context="FindNumbers" />-			<IncludeRules context="FindComments##JavaScript" />-		</context>--		<!-- Member Objects -->--		<context name="MemberObject" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">-			<IncludeRules context="DefaultMemberObject" />-			<!-- Common functions -->-			<keyword context="#pop!NoRegExp" attribute="Function Name" String="function_eventhandler" />-			<keyword context="#pop!NoRegExp" attribute="Function Name" String="function_common" />-		</context>--		<context name="DefaultMemberObject" attribute="Normal Text" lineEndContext="#pop">-			<IncludeRules context="FixPointMemberObject" />-			<DetectChar context="#stay" attribute="Symbol" char="." />-			<Detect2Chars context="#stay" attribute="Symbol" char="?" char1="." />-			<Detect2Chars context="#stay" attribute="Symbol" char="!" char1="." />--			<RegExpr context="#stay" attribute="Objects" String="&identifier;(?=\s*[\?!]?\.)" />-			<IncludeRules context="FindFunctionName" /> <!-- #pop -->-			<RegExpr context="#pop!NoRegExp" attribute="Object Member" String="&identifier;" />-			<IncludeRules context="NoRegExp" />-			<DetectSpaces />--			<!-- Generic functions, variables y properties -->-			<keyword context="#pop!NoRegExp" attribute="Object Member" String="variable_property" />-			<keyword context="#pop!NoRegExp" attribute="Function Name" String="functions" />-		</context>-		<context name="FixPointMemberObject" attribute="Normal Text" lineEndContext="#pop">-			<StringDetect context="#pop" attribute="Symbol" String="?..." />-			<StringDetect context="#pop" attribute="Symbol" String="!..." />-			<StringDetect context="#pop" attribute="Symbol" String="..." />-		</context>--		<!-- Built-in Classes -->--		<!-- DOM Classes -->-		<context name="FindMemberObjectDOM" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop!NoRegExp">-			<DetectSpaces />-			<IncludeRules context="FixPointMemberObject" />-			<DetectChar context="#pop!MemberObjectDOM" attribute="Symbol" char="." />-			<Detect2Chars context="#pop!MemberObjectDOM" attribute="Symbol" char="?" char1="." />-			<Detect2Chars context="#pop!MemberObjectDOM" attribute="Symbol" char="!" char1="." />-		</context>-		<context name="MemberObjectDOM" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">-			<keyword context="#pop!NoRegExp" attribute="Constant" String="dom_constant" />-			<keyword context="#pop!NoRegExp" attribute="Object Method (Built-in)" String="dom_functions" />-			<keyword context="#pop!NoRegExp" attribute="Object Property (Built-in)" String="dom_property" />-			<IncludeRules context="DefaultMemberObject" />-			<keyword context="#pop!NoRegExp" attribute="Object Member" String="dom_variable" />-		</context>-		<!-- Node.js Classes -->-		<context name="FindMemberObjectNode" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop!NoRegExp">-			<DetectSpaces />-			<IncludeRules context="FixPointMemberObject" />-			<DetectChar context="#pop!MemberObjectNode" attribute="Symbol" char="." />-			<Detect2Chars context="#pop!MemberObjectNode" attribute="Symbol" char="?" char1="." />-			<Detect2Chars context="#pop!MemberObjectNode" attribute="Symbol" char="!" char1="." />-		</context>-		<context name="MemberObjectNode" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">-			<IncludeRules context="DefaultMemberObject" />-			<keyword context="#pop!NoRegExp" attribute="Object Property (Built-in)" String="node_object" />-		</context>-		<!-- Math Class -->-		<context name="FindMemberObjectMath" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop!NoRegExp">-			<DetectSpaces />-			<IncludeRules context="FixPointMemberObject" />-			<DetectChar context="#pop!MemberObjectMath" attribute="Symbol" char="." />-			<Detect2Chars context="#pop!MemberObjectMath" attribute="Symbol" char="?" char1="." />-			<Detect2Chars context="#pop!MemberObjectMath" attribute="Symbol" char="!" char1="." />-		</context>-		<context name="MemberObjectMath" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">-			<keyword context="#pop!NoRegExp" attribute="Constant" String="math_property_constants" />-			<keyword context="#pop!NoRegExp" attribute="Object Method (Built-in)" String="math_functions" />-			<IncludeRules context="DefaultMemberObject" />-		</context>-		<!-- Promise Class -->-		<context name="FindMemberObjectPromise" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop!NoRegExp">-			<DetectSpaces />-			<IncludeRules context="FixPointMemberObject" />-			<DetectChar context="#pop!MemberObjectPromise" attribute="Symbol" char="." />-			<Detect2Chars context="#pop!MemberObjectPromise" attribute="Symbol" char="?" char1="." />-			<Detect2Chars context="#pop!MemberObjectPromise" attribute="Symbol" char="!" char1="." />-		</context>-		<context name="MemberObjectPromise" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">-			<keyword context="#pop!NoRegExp" attribute="Object Method (Built-in)" String="promise_functions" />-			<IncludeRules context="DefaultMemberObject" />-		</context>-		<!-- JSON Class -->-		<context name="FindMemberObjectJSON" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop!NoRegExp">-			<DetectSpaces />-			<IncludeRules context="FixPointMemberObject" />-			<DetectChar context="#pop!MemberObjectJSON" attribute="Symbol" char="." />-			<Detect2Chars context="#pop!MemberObjectJSON" attribute="Symbol" char="?" char1="." />-			<Detect2Chars context="#pop!MemberObjectJSON" attribute="Symbol" char="!" char1="." />-		</context>-		<context name="MemberObjectJSON" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">-			<keyword context="#pop!NoRegExp" attribute="Object Method (Built-in)" String="json_functions" />-			<IncludeRules context="DefaultMemberObject" />-		</context>-		<!-- Console Object -->-		<context name="FindMemberObjectConsole" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop!NoRegExp">-			<DetectSpaces />-			<IncludeRules context="FixPointMemberObject" />-			<DetectChar context="#pop!MemberObjectConsole" attribute="Symbol" char="." />-			<Detect2Chars context="#pop!MemberObjectConsole" attribute="Symbol" char="?" char1="." />-			<Detect2Chars context="#pop!MemberObjectConsole" attribute="Symbol" char="!" char1="." />-		</context>-		<context name="MemberObjectConsole" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">-			<keyword context="#pop!NoRegExp" attribute="Object Method (Built-in)" String="console_functions" />-			<IncludeRules context="DefaultMemberObject" />-		</context>-		<!-- Process Object -->-		<context name="FindMemberObjectProcess" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop!NoRegExp">-			<DetectSpaces />-			<IncludeRules context="FixPointMemberObject" />-			<DetectChar context="#pop!MemberObjectProcess" attribute="Symbol" char="." />-			<Detect2Chars context="#pop!MemberObjectProcess" attribute="Symbol" char="?" char1="." />-			<Detect2Chars context="#pop!MemberObjectProcess" attribute="Symbol" char="!" char1="." />-		</context>-		<context name="MemberObjectProcess" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">-			<keyword context="#pop!NoRegExp" attribute="Object Method (Built-in)" String="process_functions" />-			<keyword context="#pop!NoRegExp" attribute="Object Property (Built-in)" String="process_property" />-			<IncludeRules context="DefaultMemberObject" />-		</context>--	</contexts>--	<itemDatas>-		<itemData name="Normal Text"      defStyleNum="dsNormal" spellChecking="false" />-		<itemData name="Keyword"          defStyleNum="dsKeyword" spellChecking="false" />-		<itemData name="ControlFlow"      defStyleNum="dsControlFlow" spellChecking="false" />-		<itemData name="Reserved"         defStyleNum="dsKeyword" italic="true" spellChecking="false" />-		<itemData name="Module"           defStyleNum="dsImport" spellChecking="false" />-		<itemData name="Objects"          defStyleNum="dsVariable" spellChecking="false" />-		<itemData name="Object Member"    defStyleNum="dsAttribute" spellChecking="false" />-		<itemData name="Function Name"    defStyleNum="dsFunction" spellChecking="false" />-		<itemData name="Built-in Objects" defStyleNum="dsBuiltIn" spellChecking="false" />-		<itemData name="Object Property (Built-in)" defStyleNum="dsAttribute" italic="1" spellChecking="false" />-		<itemData name="Object Method (Built-in)" defStyleNum="dsFunction" italic="1" spellChecking="false" />-		<itemData name="Constant"         defStyleNum="dsConstant" spellChecking="false" />-		<itemData name="Types/Primitives" defStyleNum="dsDataType" spellChecking="false" />--		<itemData name="Decimal"      defStyleNum="dsDecVal" spellChecking="false" />-		<itemData name="Octal"        defStyleNum="dsBaseN" spellChecking="false" />-		<itemData name="Hexadecimal"  defStyleNum="dsBaseN" spellChecking="false" />-		<itemData name="Binary"       defStyleNum="dsBaseN" spellChecking="false" />-		<itemData name="Float"        defStyleNum="dsFloat" spellChecking="false" />-		<itemData name="Template"     defStyleNum="dsVerbatimString" />-		<itemData name="Substitution" defStyleNum="dsSpecialChar" spellChecking="false" />--		<itemData name="Comment"      defStyleNum="dsComment" />-		<itemData name="Symbol"       defStyleNum="dsOperator" spellChecking="false" />-	</itemDatas>--</highlighting>--<general>-	<comments>-		<comment name="singleLine" start="//" />-		<comment name="multiLine" start="/*" end="*/" />-	</comments>-	<keywords casesensitive="1" additionalDeliminator="&quot;&apos;`" weakDeliminator="+-$" />+	<!ENTITY identifier   "[a-zA-Z_$[:^ascii:]][\w$[:^ascii:]]*">+	<!ENTITY numSuffix    "(?=n?(?:[^\w]|$))">+	<!ENTITY objectOp     "[\?!]?">+	<!ENTITY objectPoint  "\s*&objectOp;\.">+	<!ENTITY endLine      "\s*(?:$|//|(?:/\*.*\*/\s*)+(?:$|//))">+	<!ENTITY utilityTypes "\b(?:Partial|Readonly|Record|Pick|Omit|Exclude|Extract|NonNullable|ReturnType|InstanceType|Required|ThisType)(?=\s*&lt;)">+	<!-- function<...>( or function( -->+	<!ENTITY functionSuffix "(?=\s*(?:&lt;(?:\{(?:[^\{\}]|\{[^\{\}]*\})*\}|\((?:[^\(\)]|\([^\(\)]*\))*\)|\[(?:[^\[\]]|\[[^\[\]]*\])*\]|'(?:\\.|[^'])*'|&quot;(?:\\.|[^&quot;])*&quot;|`(?:\\.|[^`])*`|[^&lt;&gt;]|&lt;.*&gt;)*&gt;)?\()">+]>++<!--+    ====================================================================++      This file is part of the KDE's KSyntaxHighlighting framework.++      Copyright 2018-2019 Nibaldo González S. (nibgonz@gmail.com)++      This Source Code Form is subject to the terms of the MIT License.+      If a copy of the license was not distributed with this file,+      You can obtain one at: https://opensource.org/licenses/MIT++    ====================================================================++    This file is an extension of the JavaScript highlighter+    (javascript.xml, Version 14 and higher).+    Based on the TypeScript grammar files,+    available at: https://github.com/Microsoft/TypeScript-TmLanguage++    NOTE: TypeScript directives are highlighted by "doxygen.xml",+    included in the JavaScript highlighter.+    Ex:+      /// <reference no-default-lib="true"/>++      Tags: reference, amd-dependency, amd-module+      Attributes: path, types, no-default-lib, name++    Change log:+     * v8 [2019-12-12]: Add "bigint" primitive type.+     * v7 [2019-11-20]: Move keywords of built-in object to "javascript.xml" and adapt.+     * v6 [2019-10-01]: Add "asserts" keyword in type predicates.+                        Highlight types after the "as" keyword.+     * v5 [2019-08-30]: Avoid that ?: be used as conditional expressions.+     * v4 [2019-07-16]: Fixed highlighting of keywords before ":" in conditional expressions.+     * v3 [2019-02-18]: Add support to bigint and the "is" keyword.+                        Fixes keyword delimiters. Don't highlight regex+                        after "]" and ")". Multiple fixes and improvements.+     * v2 [2018-12-29]: Don't highlight built-in classes as functions,+                        fix float-points, improve types detection and other fixes.+     * v1 [2018-11-18]: Initial version+-->++<language name="TypeScript"+          version="8"+          kateversion="5.53"+          section="Scripts"+          extensions="*.ts"+          priority="9"+          mimetype="text/typescript;application/typescript;text/x-typescript;application/x-typescript"+          indenter="cstyle"+          author="Nibaldo González (nibgonz@gmail.com)"+          license="MIT">++<highlighting>++	<!-- Include all JavaScript keywords! -->+	<list name="controlflow">+		<include>controlflow##JavaScript</include>+		<item>goto</item>+	</list>+	<list name="keywords">+		<include>keywords##JavaScript</include>+		<item>declare</item> <!-- storage.modifier.ts -->+	</list>+	<list name="reserved">+		<include>reserved##JavaScript</include>+		<item>type</item>+		<item>arguments</item>+		<!-- Class -->+		<item>readonly</item>+		<item>abstract</item>+		<item>constructor</item>+		<item>get</item>+		<item>set</item>+		<!-- Also:+		     public, protected, private, async, super, new, static -->+	</list>+	<list name="module">+		<include>module##JavaScript</include>+	</list>+	<list name="primitives">+		<include>primitives##JavaScript</include>+		<!-- Types Built-in -->+		<item>object</item>+		<!-- Also:+		     this, true, false, undefined, null -->+	</list>++	<list name="control_export_types">+		<!-- storage.type.namespace.ts -->+		<item>namespace</item>+		<item>module</item>+	</list>+	<list name="types_operator_expression">+		<item>keyof</item>+		<item>infer</item>+		<!-- Also: is, typeof -->+	</list>+	<!-- Datatypes & Primitive Types -->+	<list name="types">+		<item>string</item>+		<item>number</item>+		<item>bigint</item>+		<item>boolean</item>+		<item>symbol</item>+		<item>any</item>+		<item>void</item>+		<item>never</item>+		<item>unknown</item>++		<item>undefined</item>+		<item>null</item>+		<item>object</item>+	</list>++	<!-- Built-in Classes, Functions & Constants -->++	<list name="class_builtin">+		<include>class_builtin##JavaScript</include>+	</list>+	<!-- DOM Classes -->+	<list name="class_dom">+		<include>class_dom##JavaScript</include>+	</list>+	<!-- Node.js Classes -->+	<list name="class_node">+		<include>class_node##JavaScript</include>+	</list>++	<!-- General Properties of Classes -->+	<list name="variable_property">+		<include>variable_property##JavaScript</include>+	</list>+	<!-- General Built-in Functions -->+	<list name="functions">+		<include>functions##JavaScript</include>+	</list>++	<!-- Functions of "console" -->+	<list name="console_functions">+		<include>console_functions##JavaScript</include>+	</list>+	<!-- Properties of "process" -->+	<list name="process_property">+		<include>process_property##JavaScript</include>+	</list>+	<!-- Functions of "process" -->+	<list name="process_functions">+		<include>process_functions##JavaScript</include>+	</list>++	<!-- Constants of Number Class -->+	<list name="number_constant">+		<include>number_constant##JavaScript</include>+	</list>+	<!-- Constants of Math Class-->+	<list name="math_constant">+		<include>math_constant##JavaScript</include>+	</list>+	<!-- Methods of Math Class -->+	<list name="math_functions">+		<include>math_functions##JavaScript</include>+	</list>+	<!-- Methods of JSON Class -->+	<list name="json_functions">+		<include>json_functions##JavaScript</include>+	</list>+	<!-- Methods of Promise Class -->+	<list name="promise_functions">+		<include>promise_functions##JavaScript</include>+	</list>++	<!-- Node.js Variables -->+	<list name="node_variable">+		<include>node_variable##JavaScript</include>+	</list>+	<!-- DOM Variables -->+	<list name="dom_variable">+		<include>dom_variable##JavaScript</include>+	</list>+	<!-- DOM Constants -->+	<list name="dom_constant">+		<include>dom_constant##JavaScript</include>+	</list>++	<!-- For Autocomplete Keywords -->+	<!-- Properties of DOM Classes -->+	<list name="dom_property">+		<include>dom_property##JavaScript</include>+	</list>+	<!-- Methods of DOM Classes -->+	<list name="dom_functions">+		<include>dom_functions##JavaScript</include>+	</list>+	<!-- Event Handler -->+	<list name="eventhandler_property">+		<include>eventhandler_property##JavaScript</include>+	</list>+	<!-- Others Methods of Classes -->+	<list name="function_common">+		<include>function_common##JavaScript</include>+	</list>++	<contexts>++		<context name="Shebang" attribute="Normal Text" lineEndContext="Normal" lineEmptyContext="Normal" fallthrough="true" fallthroughContext="Normal">+			<Detect2Chars context="ShebangLine" attribute="Comment" char="#" char1="!" column="0" />+		</context>+		<context name="ShebangLine" attribute="Comment" lineEndContext="#pop!Normal" />++		<context name="Normal" attribute="Normal Text" lineEndContext="#stay">+			<StringDetect context="#stay" attribute="Symbol" String="..." />+			<IncludeRules context="FindNumbers" />+			<IncludeRules context="FindStrings" />++			<!-- Abstract -->+			<RegExpr context="#stay" attribute="Reserved" String="\babstract(?=\s+(?:class|interface)\b)" />+			<!-- New -->+			<RegExpr context="NewTarget" attribute="Keyword" String="\bnew(?=&objectPoint;\s*target\b)" />+			<RegExpr context="MemberObject" attribute="Objects" String="\bnew(?=&objectOp;\.)" />+			<WordDetect context="#stay" attribute="Keyword" String="new" />++			<!-- Keywords: control flow -->+			<keyword context="#stay" attribute="ControlFlow" String="controlflow" />+			<RegExpr context="#stay" attribute="ControlFlow" String="\bdefault(?=\s*&objectOp;:)" />++			<!-- NOTE & TODO: The identifiers before ":" are highlighted as "dsNormal".+			     These identifiers should be highlighted in a different way depending on the+			     context, for example, in the declaration of classes or interfaces, in sets, the+			     parameters of a function, or after the keywords: "const", "var", "let" & "enum". -->+			<RegExpr context="#stay" attribute="Parameter" String="&identifier;(?=\s*&objectOp;:)" />++			<!-- Keywords -->+			<WordDetect context="TypeDeclaration" attribute="Reserved" String="type" />+			<WordDetect context="FunctionDeclaration" attribute="Keyword" String="function" />+			<keyword context="#stay" attribute="Keyword" String="keywords" /> <!-- NoRegExp? -->+			<keyword context="#stay" attribute="Reserved" String="reserved" />++			<!-- Utility Types -->+			<RegExpr context="#stay" attribute="Built-in Objects" String="&utilityTypes;" />+			<!-- Built-in Classes -->+			<IncludeRules context="BuiltInClasses" />+			<IncludeRules context="BuiltInConstants" />+			<!-- Objects -->+			<RegExpr context="MemberObject" attribute="Objects" String="&identifier;(?=&objectPoint;)" />+			<DetectChar context="MemberObject" attribute="Symbol" char="." />++			<RegExpr context="Types" attribute="Module" String="\bas(?=\s)" />+			<!-- Import -->+			<WordDetect context="Import" attribute="Module" String="import" />+			<!-- Export types -->+			<keyword context="ControlExport" attribute="Module" String="control_export_types" />+			<!-- Keywords -->+			<keyword context="#stay" attribute="Module" String="module" />+			<keyword context="NoRegExp" attribute="Keyword" String="primitives" />+			<keyword context="#stay" attribute="Keyword" String="types_operator_expression" />++			<!-- Functions: function(...) and function<...>(...) -->+			<RegExpr context="Function" attribute="Function Name" String="(&identifier;)&functionSuffix;" lookAhead="true" />++			<!-- Symbols & Operators -->+			<!-- NOTE: The brackets {}()[] are highlighted as Normal Text. -->+			<DetectChar context="Object" attribute="Normal Text" char="{" beginRegion="Brace" />+			<DetectChar context="#stay" attribute="Normal Text" char="[" beginRegion="List" />+			<DetectChar context="NoRegExp" attribute="Normal Text" char="]" endRegion="List" />+			<!-- NOTE: Avoid highlighting identifier?: string, -->+			<RegExpr context="ConditionalExpression" attribute="Symbol" String="\?(?=.*&identifier;\s*\:)" />++			<!-- Type Parameter: Highlight types after ":" and between "<" and ">" -->+			<DetectChar context="Types" attribute="Symbol" char=":" />+			<RegExpr context="TypesAngleBracket" attribute="Symbol" String="&lt;(?=(?:&identifier;|[\[\{\(&lt;]).*&gt;)" />++			<IncludeRules context="JSBase##JavaScript" />+		</context>++		<!-- Highlight keywords before ":" in conditional expressions. -->+		<context name="ConditionalExpression" attribute="Normal Text" lineEndContext="#pop">+			<DetectChar context="#pop" attribute="Symbol" char=":" />+			<DetectChar context="#stay" attribute="Symbol" char="?" />++			<!-- Keywords -->+			<WordDetect context="#stay" attribute="Reserved" String="type" />+			<WordDetect context="FunctionDeclaration" attribute="Keyword" String="function" />+			<keyword context="#stay" attribute="Keyword" String="keywords" /> <!-- NoRegExp? -->+			<keyword context="#stay" attribute="Reserved" String="reserved" />+			<!-- Utility Types -->+			<RegExpr context="#stay" attribute="Built-in Objects" String="&utilityTypes;" />+			<!-- Built-in Classes -->+			<IncludeRules context="BuiltInClasses" />+			<IncludeRules context="BuiltInConstants" />+			<!-- Import -->+			<WordDetect context="#stay" attribute="Module" String="import" />+			<!-- Export types -->+			<keyword context="#stay" attribute="Module" String="control_export_types" />+			<!-- Keywords -->+			<keyword context="#stay" attribute="Module" String="module" />+			<keyword context="NoRegExp" attribute="Keyword" String="primitives" />+			<keyword context="#stay" attribute="Keyword" String="types_operator_expression" />++			<!-- NOTE: The identifiers before ":" should be highlighted as "Normal Text".+			     However, currently, the "Parameter" attribute is equivalent to "Normal Text". -->+			<!-- <RegExpr context="#stay" attribute="Normal Text" String="&identifier;(?=\s*&objectOp;:)" /> -->+			<IncludeRules context="Normal" />+		</context>++		<!-- Object, within { ... } -->+		<context name="Object" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="#pop" attribute="Normal Text" char="}" endRegion="Brace" />+			<keyword context="NoRegExp" attribute="Keyword" String="keywords" />+			<!-- Highlight types in the following line.+			     NOTE: Using the "NoRegExp" context can cause this to apply to multiple lines. -->+			<RegExpr context="TypesNewLine" attribute="Symbol" String=":(?=&endLine;)" minimal="true" />+			<IncludeRules context="Normal" />+		</context>++		<!-- Avoid highlighting regular expressions. -->+		<context name="NoRegExp" attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop">+			<IncludeRules context="NoRegExp##JavaScript" />+		</context>+		<!-- Avoid highlighting regular expressions on a single line. -->+		<context name="NoRegExpSameLine" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+			<IncludeRules context="NoRegExp##JavaScript" />+		</context>++		<!-- Numbers -->+		<context name="FindNumbers" attribute="Normal Text" lineEndContext="#stay">+			<RegExpr context="NoRegExp" attribute="Hexadecimal" String="\b0[xX][\da-fA-F][\da-fA-F_]*&numSuffix;" />+			<RegExpr context="NoRegExp" attribute="Binary" String="\b0[bB][01][01_]*&numSuffix;" />+			<RegExpr context="NoRegExp" attribute="Float" String="(?:\b\d[\d_]*\.?|(?:\b\d[\d_]*)?\.\d[\d_]*)[eE][\+\-]?\d[\d_]*&numSuffix;" />+			<RegExpr context="NoRegExp" attribute="Float" String="(?:\.\d[\d_]*|\b\d[\d_]*\.(?:\d[\d_]*)?)&numSuffix;" />+			<RegExpr context="NoRegExp" attribute="Octal" String="\b0[oO]?[0-7][0-7_]*&numSuffix;" />+			<RegExpr context="NoRegExp" attribute="Decimal" String="\b\d[\d_]*&numSuffix;" />+		</context>++		<!-- Function Name -->+		<context name="Function" attribute="Normal Text" lineEndContext="#pop">+			<keyword context="#pop" attribute="Function (Built-in)" String="functions" />+			<StringDetect context="#pop" attribute="Function Name" String="%1" dynamic="true" />+			<AnyChar context="#pop" String="(&lt;&gt;" lookAhead="true" />+		</context>+		<context name="FunctionDeclaration" attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop">+			<DetectSpaces />+			<RegExpr context="#pop" attribute="Function Declaration" String="&identifier;&functionSuffix;" /> <!-- NoRegExp -->+			<IncludeRules context="FindComments##JavaScript" />+		</context>++		<!-- Strings -->+		<context name="FindStrings" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="Template" attribute="Template" char="`" />+			<IncludeRules context="FindStrings##JavaScript" />+		</context>+		<context name="Template" attribute="Template" lineEndContext="#stay">+			<IncludeRules context="Escape##JavaScript" />+			<Detect2Chars context="Substitution" attribute="Substitution" char="$" char1="{" />+			<DetectChar context="RegExpAfterString##JavaScript" attribute="Template" char="`" />+		</context>+		<context name="Substitution" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="#pop" attribute="Substitution" char="}" />+			<IncludeRules context="Normal" />+		</context>++		<!-- Type Declaration: Highlight types after the "type" keyword -->++		<context name="TypeDeclaration" attribute="Normal Text" lineEndContext="#stay">+			<DetectSpaces />+			<AnyChar context="#pop" String=";,{})]" lookAhead="true" />+			<IncludeRules context="TypesFindBrackets" />+			<IncludeRules context="DefaultTypes" />+			<IncludeRules context="Normal" />+		</context>++		<!-- Type Parameter: Highlight types after ":" -->++		<context name="Types" attribute="Normal Text" lineEndContext="#pop">+			<IncludeRules context="FixPopLineEndContext" />+			<IncludeRules context="TypesCommon" />+		</context>+		<context name="TypesCommon" attribute="Normal Text" lineEndContext="#pop">+			<DetectSpaces />+			<IncludeRules context="TypesEnd" />+			<!-- New line after "|" or "&".+			     IMPORTANT: If you modify this rule, do so in "typescript-react.xml"! -->+			<RegExpr context="#pop!TypesNewLine" attribute="Symbol" String="[\|&amp;](?=&endLine;)" minimal="true" />++			<IncludeRules context="TypesFindBrackets" />+			<IncludeRules context="DefaultTypes" />+			<IncludeRules context="Normal" />+		</context>+		<!-- NOTE: Context used by "typescript-react.xml" -->+		<context name="TypesEnd" attribute="Normal Text" lineEndContext="#stay">+			<AnyChar context="#pop" String=";,})]" lookAhead="true" />+			<RegExpr context="#pop" String="\=(?!&gt;)" lookAhead="true" />+			<Detect2Chars context="#pop" char="/" char1="/" lookAhead="true" />+		</context>+		<context name="TypesNewLine" attribute="Normal Text" lineEndContext="#stay" fallthrough="true" fallthroughContext="#pop!TypesCommon">+			<DetectSpaces />+			<IncludeRules context="FindComments##JavaScript" />+		</context>++		<!-- NOTE: The "NoRegExp" context invalidates lineEndContext="#pop",+		     therefore the following rule is necessary -->+		<context name="FixPopLineEndContext" attribute="Normal Text" lineEndContext="#stay">+			<RegExpr context="#pop" String="\S" firstNonSpace="true" lookAhead="true" />+		</context>++		<!-- Default: Type Parameter, Type Declaration, Angle Brackets -->++		<context name="DefaultTypes" attribute="Normal Text" lineEndContext="#stay">+			<!-- Types Keywords -->+			<keyword context="NoRegExpSameLine" attribute="Types" String="types" />+			<!-- Assertions -->+			<WordDetect context="NoRegExpSameLine" attribute="Keyword" String="asserts" />+			<!-- Type Guards -->+			<WordDetect context="NoRegExpSameLine" attribute="Keyword" String="is" />++			<!-- FIXME: For a strange reason, the keywords before "}" are not highlighted.+			     This rule fixes it provisionally. -->+			<RegExpr context="#stay" attribute="Types" String="\b(?:string|number|bigint|boolean|symbol|any|void|never|unknown|undefined|null|object)(?=\})" />++			<!-- Don't start this context again -->+			<AnyChar context="#stay" attribute="Symbol" String="?:" />+			<WordDetect context="#stay" attribute="Module" String="as" />+		</context>+		<context name="TypesFindBrackets" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="TypesSquareBracket" attribute="Normal Text" char="[" beginRegion="List" />+			<DetectChar context="TypesCurlyBracket" attribute="Normal Text" char="{" beginRegion="Brace" />+			<DetectChar context="TypesRoundBracket" attribute="Normal Text" char="(" />+		</context>++		<context name="TypesSquareBracket" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="#pop!NoRegExp" attribute="Normal Text" char="]" endRegion="List" />+			<IncludeRules context="TypesFindBrackets" />+			<IncludeRules context="DefaultTypes" />+			<IncludeRules context="Normal" />+		</context>+		<context name="TypesCurlyBracket" attribute="Normal Text" lineEndContext="#pop!Object">+			<DetectChar context="#pop" attribute="Normal Text" char="}" endRegion="Brace" />+			<RegExpr context="#pop!Object" String="\S" firstNonSpace="true" lookAhead="true" /> <!-- FixPopLineEndContext -->+			<IncludeRules context="TypesFindBrackets" />+			<IncludeRules context="DefaultTypes" />+			<IncludeRules context="Object" />+		</context>+		<context name="TypesRoundBracket" attribute="Normal Text" lineEndContext="#pop">+			<DetectChar context="#pop!NoRegExp" attribute="Normal Text" char=")" />+			<IncludeRules context="FixPopLineEndContext" />+			<IncludeRules context="TypesFindBrackets" />+			<IncludeRules context="DefaultTypes" />+			<IncludeRules context="Normal" />+		</context>++		<context name="TypesAngleBracket" attribute="Normal Text" lineEndContext="#pop">+			<DetectChar context="#pop" attribute="Symbol" char="&gt;" />+			<IncludeRules context="TypesAngleBracketEnd" />+			<IncludeRules context="FixPopLineEndContext" />+			<IncludeRules context="TypesFindBrackets" />+			<IncludeRules context="DefaultTypes" />+			<IncludeRules context="Normal" />+		</context>+		<!-- NOTE: Context used by "typescript-react.xml" -->+		<context name="TypesAngleBracketEnd" attribute="Normal Text" lineEndContext="#stay">+			<AnyChar context="#pop" String="})];" lookAhead="true" />+		</context>++		<!-- new.target -->+		<context name="NewTarget" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+			<DetectSpaces />+			<AnyChar context="#stay" attribute="Symbol" String=".?!" />+			<WordDetect context="#pop!NoRegExp" attribute="Keyword" String="target" />+		</context>++		<!-- After keyword list "control_export_types" -->+		<context name="ControlExport" attribute="Normal Text" lineEndContext="#pop">+			<AnyChar context="#pop" attribute="Normal Text" String="{;" lookAhead="true" />+			<IncludeRules context="FindStrings" />+			<RegExpr context="#stay" attribute="Types" String="&identifier;" />+			<IncludeRules context="FindComments##JavaScript" />+		</context>++		<!-- "import" keyword -->+		<context name="Import" attribute="Normal Text" lineEndContext="#pop">+			<DetectChar context="#pop!ImportRequireKey" attribute="Symbol" char="=" />+			<WordDetect context="#pop!NoRegExp" attribute="Keyword" String="meta" /> <!-- importmeta_property -->+			<!-- Fix context NoRegExp (#pop in new line) -->+			<RegExpr context="#pop" String="." lookAhead="true" firstNonSpace="true" />+			<AnyChar context="#pop" String="{}()[];," lookAhead="true" />+			<IncludeRules context="Normal" />+		</context>+		<context name="ImportRequireKey" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+			<RegExpr context="#stay" attribute="Keyword" String="\s*require\s*(?=\()" />+			<DetectChar context="ImportRequire" attribute="Normal Text" char="(" beginRegion="import" />+		</context>+		<context name="ImportRequire" attribute="Normal Text" lineEndContext="#stay">+			<DetectChar context="#pop#pop" attribute="Normal Text" char=")" endRegion="import" />+			<IncludeRules context="FindStrings" />+			<IncludeRules context="FindNumbers" />+			<IncludeRules context="FindComments##JavaScript" />+		</context>++		<!-- Member Objects -->++		<context name="MemberObject" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+			<IncludeRules context="DefaultMemberObject" />+			<!-- Common functions and properties, only for autocomplete keywords -->+			<keyword context="#pop!NoRegExp" attribute="Object Member" String="dom_property" />+			<keyword context="#pop!NoRegExp" attribute="Function Name" String="dom_functions" />+			<keyword context="#pop!NoRegExp" attribute="Object Member" String="eventhandler_property" />+			<keyword context="#pop!NoRegExp" attribute="Function Name" String="function_common" />+		</context>++		<context name="DefaultMemberObject" attribute="Normal Text" lineEndContext="#pop">+			<IncludeRules context="FixPointMemberObject" />+			<DetectChar context="#stay" attribute="Symbol" char="." />+			<Detect2Chars context="#stay" attribute="Symbol" char="?" char1="." />+			<Detect2Chars context="#stay" attribute="Symbol" char="!" char1="." />++			<!-- The order of these rules is important: 1) Functions. 2) Constants & Properties. 3) Obj. Members. -->+			<!-- function(...) and function<...>(...) -->+			<RegExpr context="#pop" attribute="Function Name" String="&identifier;&functionSuffix;" />+			<!-- Generic constants and properties -->+			<keyword context="#pop!NoRegExp" attribute="Object Property (Built-in)" String="variable_property" />+			<keyword context="#pop!NoRegExp" attribute="Constant" String="dom_constant" />++			<RegExpr context="#stay" attribute="Object Member" String="&identifier;(?=&objectPoint;)" />+			<RegExpr context="#pop!NoRegExp" attribute="Object Member" String="&identifier;" />+			<IncludeRules context="NoRegExp" />+			<DetectSpaces />++			<!-- Generic functions -->+			<keyword context="#pop!NoRegExp" attribute="Function Name" String="functions" />+		</context>+		<context name="FixPointMemberObject" attribute="Normal Text" lineEndContext="#pop">+			<StringDetect context="#pop" attribute="Symbol" String="?..." />+			<StringDetect context="#pop" attribute="Symbol" String="!..." />+			<StringDetect context="#pop" attribute="Symbol" String="..." />+		</context>+++		<!-- Built-in Classes -->+		<!-- Keep in sync with javascript.xml -->++		<context name="BuiltInClasses" attribute="Normal Text" lineEndContext="#stay">+			<WordDetect context="FindMemberObjectMath" attribute="Built-in Objects" String="Math" />+			<WordDetect context="FindMemberObjectNumber" attribute="Built-in Objects" String="Number" />+			<WordDetect context="FindMemberObjectPromise" attribute="Built-in Objects" String="Promise" />+			<WordDetect context="FindMemberObjectJSON" attribute="Built-in Objects" String="JSON" />+			<WordDetect context="FindMemberObjectConsole" attribute="Built-in Objects" String="console" />+			<WordDetect context="FindMemberObjectProcess" attribute="Built-in Objects" String="process" />++			<keyword context="NoRegExp" attribute="Built-in Objects" String="class_builtin" />+			<keyword context="NoRegExp" attribute="Built-in Objects" String="class_dom" />+			<keyword context="FindMemberObjectDOM" attribute="Built-in Objects" String="dom_variable" />+			<keyword context="NoRegExp" attribute="Built-in Objects" String="class_node" />+			<keyword context="NoRegExp" attribute="Built-in Objects" String="node_variable" />+		</context>+		<!-- These constants are highlighted in "Normal" -->+		<context name="BuiltInConstants" attribute="Normal Text" lineEndContext="#stay">+			<keyword context="NoRegExp" attribute="Constant" String="math_constant" />+			<keyword context="NoRegExp" attribute="Constant" String="number_constant" />+			<keyword context="NoRegExp" attribute="Constant" String="dom_constant" />+		</context>++		<!-- DOM Variable -->+		<context name="FindMemberObjectDOM" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop!NoRegExp">+			<DetectSpaces />+			<IncludeRules context="FixPointMemberObject" />+			<DetectChar context="#pop!MemberObjectDOM" attribute="Symbol" char="." />+			<Detect2Chars context="#pop!MemberObjectDOM" attribute="Symbol" char="?" char1="." />+			<Detect2Chars context="#pop!MemberObjectDOM" attribute="Symbol" char="!" char1="." />+		</context>+		<context name="MemberObjectDOM" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+			<keyword context="#pop!FindMemberObjectDOM" attribute="Object Property (Built-in)" String="dom_property" />+			<keyword context="#pop!FindMemberObjectDOM" attribute="Object Method (Built-in)" String="dom_functions" />+			<IncludeRules context="DefaultMemberObject" />+			<!-- Only for autocomplete -->+			<keyword context="#pop!NoRegExp" attribute="Object Member" String="eventhandler_property" />+			<keyword context="#pop!NoRegExp" attribute="Function Name" String="function_common" />+		</context>+		<!-- Math Class -->+		<context name="FindMemberObjectMath" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop!NoRegExp">+			<DetectSpaces />+			<IncludeRules context="FixPointMemberObject" />+			<DetectChar context="#pop!MemberObjectMath" attribute="Symbol" char="." />+			<Detect2Chars context="#pop!MemberObjectMath" attribute="Symbol" char="?" char1="." />+			<Detect2Chars context="#pop!MemberObjectMath" attribute="Symbol" char="!" char1="." />+		</context>+		<context name="MemberObjectMath" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+			<keyword context="#pop!NoRegExp" attribute="Constant" String="math_constant" />+			<keyword context="#pop!NoRegExp" attribute="Object Method (Built-in)" String="math_functions" />+			<IncludeRules context="DefaultMemberObject" />+		</context>+		<!-- Number Class -->+		<context name="FindMemberObjectNumber" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop!NoRegExp">+			<DetectSpaces />+			<IncludeRules context="FixPointMemberObject" />+			<DetectChar context="#pop!MemberObjectNumber" attribute="Symbol" char="." />+			<Detect2Chars context="#pop!MemberObjectNumber" attribute="Symbol" char="?" char1="." />+			<Detect2Chars context="#pop!MemberObjectNumber" attribute="Symbol" char="!" char1="." />+		</context>+		<context name="MemberObjectNumber" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+			<keyword context="#pop!NoRegExp" attribute="Constant" String="number_constant" />+			<IncludeRules context="DefaultMemberObject" />+		</context>+		<!-- Promise Class -->+		<context name="FindMemberObjectPromise" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop!NoRegExp">+			<DetectSpaces />+			<IncludeRules context="FixPointMemberObject" />+			<DetectChar context="#pop!MemberObjectPromise" attribute="Symbol" char="." />+			<Detect2Chars context="#pop!MemberObjectPromise" attribute="Symbol" char="?" char1="." />+			<Detect2Chars context="#pop!MemberObjectPromise" attribute="Symbol" char="!" char1="." />+		</context>+		<context name="MemberObjectPromise" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+			<keyword context="#pop!NoRegExp" attribute="Object Method (Built-in)" String="promise_functions" />+			<IncludeRules context="DefaultMemberObject" />+		</context>+		<!-- JSON Class -->+		<context name="FindMemberObjectJSON" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop!NoRegExp">+			<DetectSpaces />+			<IncludeRules context="FixPointMemberObject" />+			<DetectChar context="#pop!MemberObjectJSON" attribute="Symbol" char="." />+			<Detect2Chars context="#pop!MemberObjectJSON" attribute="Symbol" char="?" char1="." />+			<Detect2Chars context="#pop!MemberObjectJSON" attribute="Symbol" char="!" char1="." />+		</context>+		<context name="MemberObjectJSON" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+			<keyword context="#pop!NoRegExp" attribute="Object Method (Built-in)" String="json_functions" />+			<IncludeRules context="DefaultMemberObject" />+		</context>+		<!-- Console Object -->+		<context name="FindMemberObjectConsole" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop!NoRegExp">+			<DetectSpaces />+			<IncludeRules context="FixPointMemberObject" />+			<DetectChar context="#pop!MemberObjectConsole" attribute="Symbol" char="." />+			<Detect2Chars context="#pop!MemberObjectConsole" attribute="Symbol" char="?" char1="." />+			<Detect2Chars context="#pop!MemberObjectConsole" attribute="Symbol" char="!" char1="." />+		</context>+		<context name="MemberObjectConsole" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+			<keyword context="#pop!NoRegExp" attribute="Object Method (Built-in)" String="console_functions" />+			<IncludeRules context="DefaultMemberObject" />+		</context>+		<!-- Process Object -->+		<context name="FindMemberObjectProcess" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop!NoRegExp">+			<DetectSpaces />+			<IncludeRules context="FixPointMemberObject" />+			<DetectChar context="#pop!MemberObjectProcess" attribute="Symbol" char="." />+			<Detect2Chars context="#pop!MemberObjectProcess" attribute="Symbol" char="?" char1="." />+			<Detect2Chars context="#pop!MemberObjectProcess" attribute="Symbol" char="!" char1="." />+		</context>+		<context name="MemberObjectProcess" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">+			<keyword context="#pop!NoRegExp" attribute="Object Method (Built-in)" String="process_functions" />+			<keyword context="#pop!NoRegExp" attribute="Object Property (Built-in)" String="process_property" />+			<IncludeRules context="DefaultMemberObject" />+		</context>++	</contexts>++	<itemDatas>+		<itemData name="Normal Text"      defStyleNum="dsNormal" spellChecking="false" />+		<itemData name="Keyword"          defStyleNum="dsKeyword" spellChecking="false" />+		<itemData name="ControlFlow"      defStyleNum="dsControlFlow" spellChecking="false" />+		<itemData name="Reserved"         defStyleNum="dsKeyword" italic="true" spellChecking="false" />+		<itemData name="Module"           defStyleNum="dsImport" spellChecking="false" />+		<itemData name="Objects"          defStyleNum="dsNormal" spellChecking="false" />+		<itemData name="Object Member"    defStyleNum="dsAttribute" spellChecking="false" />+		<itemData name="Function Name"    defStyleNum="dsFunction" spellChecking="false" />+		<itemData name="Function Declaration" defStyleNum="dsFunction" spellChecking="false" />+		<itemData name="Built-in Objects" defStyleNum="dsBuiltIn" spellChecking="false" />+		<itemData name="Object Property (Built-in)" defStyleNum="dsAttribute" italic="1" spellChecking="false" />+		<itemData name="Object Method (Built-in)" defStyleNum="dsFunction" italic="1" spellChecking="false" />+		<itemData name="Function (Built-in)" defStyleNum="dsPreprocessor" spellChecking="false" />+		<itemData name="Constant"         defStyleNum="dsConstant" spellChecking="false" />+		<itemData name="Types"            defStyleNum="dsDataType" spellChecking="false" />+		<itemData name="Parameter"        defStyleNum="dsNormal" spellChecking="false" />++		<itemData name="Decimal"      defStyleNum="dsDecVal" spellChecking="false" />+		<itemData name="Octal"        defStyleNum="dsBaseN" spellChecking="false" />+		<itemData name="Hexadecimal"  defStyleNum="dsBaseN" spellChecking="false" />+		<itemData name="Binary"       defStyleNum="dsBaseN" spellChecking="false" />+		<itemData name="Float"        defStyleNum="dsFloat" spellChecking="false" />+		<itemData name="Template"     defStyleNum="dsVerbatimString" />+		<itemData name="Substitution" defStyleNum="dsSpecialChar" spellChecking="false" />++		<itemData name="Comment"      defStyleNum="dsComment" />+		<itemData name="Symbol"       defStyleNum="dsOperator" spellChecking="false" />+	</itemDatas>++</highlighting>++<general>+	<comments>+		<comment name="singleLine" start="//" />+		<comment name="multiLine" start="/*" end="*/" />+	</comments>+	<keywords casesensitive="1" additionalDeliminator="&quot;&apos;`" weakDeliminator="$" /> </general>  </language>
syntax/vhdl.xml view
@@ -8,7 +8,7 @@   <!ENTITY label     "((&varname;)\s*:\s*)?">  ]>-<language name="VHDL" version="6" kateversion="3.0" section="Hardware" extensions="*.vhdl;*.vhd" mimetype="text/x-vhdl" author="Rocky Scaletta (rocky@purdue.edu), Stefan Endrullis (stefan@endrullis.de), Florent Ouchet (outchy@users.sourceforge.net), Chris Higgs (chiggs.99@gmail.com), Jan Michel (jan@mueschelsoft.de), Luigi Calligaris (luigi.calligaris@stfc.ac.uk)">+<language name="VHDL" version="7" kateversion="3.0" section="Hardware" extensions="*.vhdl;*.vhd" mimetype="text/x-vhdl" author="Rocky Scaletta (rocky@purdue.edu), Stefan Endrullis (stefan@endrullis.de), Florent Ouchet (outchy@users.sourceforge.net), Chris Higgs (chiggs.99@gmail.com), Jan Michel (jan@mueschelsoft.de), Luigi Calligaris (luigi.calligaris@stfc.ac.uk)">   <highlighting>     <list name="keywordsToplevel">       <item>file</item>@@ -220,7 +220,7 @@          <RegExpr attribute="Control" context="architecture_main" insensitive="true" dynamic="true" lookAhead="true"                  String="&bos;architecture\s+(&varname;)&eos;"/>-        <StringDetect attribute="Control" context="entity"+        <StringDetect attribute="Control" context="entity" insensitive="true"                  String="entity"/>         <RegExpr attribute="Control" context="package" insensitive="true" lookAhead="true" dynamic="true" beginRegion="PackageRegion1"                  String="&bos;package\s+(&varname;)\s+is&eos;"/>@@ -414,7 +414,7 @@         <IncludeRules context="preDetection"/>         <RegExpr attribute="Reference"   context="#stay" String="&bos;%4&eos;" dynamic="true"/>         <RegExpr attribute="Name"        context="#stay" String="&bos;%3&eos;" dynamic="true"/>-        <RegExpr attribute="Keyword"     context="instanceMap" beginRegion="InstanceMapRegion"+        <RegExpr attribute="Keyword"     context="instanceMap" insensitive="true" beginRegion="InstanceMapRegion"                  String="&bos;(port|generic)\s+map\s*\(" />         <DetectChar attribute="Normal Text" context="#pop" char=";" endRegion="InstanceRegion1"/>         <IncludeRules context="generalDetection"/>@@ -598,7 +598,9 @@       </context>  <!-- other environments -->-      <context name="comment" attribute="Comment" lineEndContext="#pop"/>+      <context name="comment" attribute="Comment" lineEndContext="#pop">+        <IncludeRules context="##Alerts"/>+      </context>        <context name="string" attribute="Vector" lineEndContext="#stay">         <DetectChar attribute="Vector" context="#pop" char="&quot;"/>
syntax/yaml.xml view
@@ -27,22 +27,27 @@   <!ENTITY literalOp      "[\|&gt;][\-\+]?">   <!-- Key after "?" or "-", used to detect literal/folded operator -->   <!ENTITY keyAfterOp     "(?:[^&quot;'#\-\?\s][^:#]*|\-(?:[^\s:#][^:#]*)?|&keyDQ;|&keySQ;)">++  <!ENTITY dataTypes      "!!\S+">+  <!ENTITY alias          "&amp;\S+">+  <!ENTITY reference      "\*\S+"> ]>  <!-- Author: Dr Orlovsky MA <maxim@orlovsky.info> //-->-<!-- Modifications, values & support for literal/folded style:-       Nibaldo González S. <nibgonz@gmail.com> //-->-<language name="YAML" version="5" kateversion="5.0" section="Markup"-          extensions="*.yaml;*.yml" mimetype="text/yaml"-          author="Dr Orlovsky MA (dr.orlovsky@gmail.com)" license="LGPL">+<!-- Modifications (YAML 1.2), values & support for literal/folded style:+       Nibaldo González S. <nibgonz@gmail.com>+       These modifications are under the MIT license. //-->+<language name="YAML" version="6" kateversion="5.0" section="Markup"+          extensions="*.yaml;*.yml" mimetype="text/yaml" priority="9"+          author="Dr Orlovsky MA (dr.orlovsky@gmail.com), Nibaldo González (nibgonz@gmail.com)" license="LGPL">   <highlighting>     <contexts>-      <context attribute="Normal Text" lineEndContext="#stay" name="normal" >+      <context attribute="Attribute" lineEndContext="#stay" name="normal" >         <StringDetect attribute="Document Header" context="header" String="---" column="0"/>-        <RegExpr attribute="End of Document" context="EOD" String="^\.\.\.$"/>+        <RegExpr attribute="End of Document" context="EOD" String="^\.\.\.$" column="0"/>         <DetectChar attribute="Directive" context="directive" char="%" column="0"/> -        <DetectChar attribute="Comment" context="comment" char="#" />+        <RegExpr attribute="Comment" context="comment" String="(^|\s+)#" />          <!-- Literal/Folded Style -->         <IncludeRules context="find-literal-block" />@@ -50,48 +55,77 @@         <RegExpr attribute="Operator" firstNonSpace="true" context="dash" String="\-(?=\s|$)" />         <DetectChar attribute="Operator" firstNonSpace="true" context="mapping-key" char="?" /> -        <DetectChar attribute="Operator" context="list" char="[" beginRegion="List" />-        <DetectChar attribute="Operator" context="hash" char="{" beginRegion="Hash" />+        <DetectChar attribute="Operator" firstNonSpace="true" context="list" char="[" beginRegion="List" />+        <DetectChar attribute="Operator" firstNonSpace="true" context="hash" char="{" beginRegion="Hash" /> -        <RegExpr attribute="Data Types" firstNonSpace="true" context="#stay" String="!!\S+" />-        <RegExpr attribute="Alias" firstNonSpace="true" context="#stay" String="&amp;\S+" />-        <RegExpr attribute="Reference" firstNonSpace="true" context="#stay" String="\*\S+" />+        <RegExpr attribute="Data Types" firstNonSpace="true" context="after-data" String="&dataTypes;" />+        <RegExpr attribute="Alias" firstNonSpace="true" context="after-data" String="&alias;" />+        <RegExpr attribute="Reference" firstNonSpace="true" context="after-data" String="&reference;" /> -        <RegExpr attribute="Key" context="attribute-pre" String="[^&quot;'#\-\s][^:#]*:(?=\s|$)"/>-        <RegExpr attribute="Key" context="attribute-pre" String="\-([^\s:#][^:#]*)?\:(?=\s|$)"/>-        <RegExpr attribute="Key" context="attribute-pre" String="&keyDQ;:(?=\s|$)"/>-        <RegExpr attribute="Key" context="attribute-pre" String="&keySQ;:(?=\s|$)"/>-        <RegExpr attribute="Key" context="attribute-pre" String=":(?=\s|$)"/>+        <RegExpr attribute="Key" context="dpoints-attribute-pre" String="[^&quot;'#\-\s][^:#]*(?=:(\s|$))"/>+        <RegExpr attribute="Key" context="dpoints-attribute-pre" String="\-([^\s:#][^:#]*)?(?=:(\s|$))"/>+        <RegExpr attribute="Key" context="dpoints-attribute-pre" String="&keyDQ;(?=:(\s|$))"/>+        <RegExpr attribute="Key" context="dpoints-attribute-pre" String="&keySQ;(?=:(\s|$))"/>+        <RegExpr attribute="Key Points Operator" context="attribute-pre" String=":(?=\s|$)"/> -        <DetectChar attribute="String" context="string" char="'" beginRegion="String" />-        <DetectChar attribute="String" context="stringx" char="&quot;" beginRegion="String" />+        <DetectChar attribute="String" firstNonSpace="true" context="string" char="'" beginRegion="String" />+        <DetectChar attribute="String" firstNonSpace="true" context="stringx" char="&quot;" beginRegion="String" />         <IncludeRules context="values-firstnonspace" />         <DetectSpaces/>       </context>        <context attribute="Normal Text" lineEndContext="#pop" name="mapping-key" fallthrough="true" fallthroughContext="#pop">+        <RegExpr attribute="Comment" context="#pop!comment" String="(^|\s+)#" />         <DetectSpaces />         <RegExpr attribute="Operator" context="#pop!dash" String="\-(?=\s|$)" />-        <RegExpr attribute="Data Types" context="#pop" String="!!\S+" />-        <RegExpr attribute="Alias" context="#pop" String="&amp;\S+" />-        <RegExpr attribute="Reference" context="#pop" String="\*\S+" />+        <RegExpr attribute="Data Types" context="#pop!after-data" String="&dataTypes;" />+        <RegExpr attribute="Alias" context="#pop!after-data" String="&alias;" />+        <RegExpr attribute="Reference" context="#pop!after-data" String="&reference;" />++        <DetectChar attribute="Operator" context="#pop!list" char="[" beginRegion="List" />+        <DetectChar attribute="Operator" context="#pop!hash" char="{" beginRegion="Hash" />+        <DetectChar attribute="String" context="#pop!string" char="'" beginRegion="String" />+        <DetectChar attribute="String" context="#pop!stringx" char="&quot;" beginRegion="String" />       </context> -      <context attribute="List" lineEndContext="#pop" name="dash" fallthrough="true" fallthroughContext="#pop">+      <context attribute="Normal Text" lineEndContext="#pop" name="dash" fallthrough="true" fallthroughContext="#pop">+        <RegExpr attribute="Comment" context="comment" String="(^|\s+)#" />         <DetectSpaces/>-        <DetectChar attribute="Comment" context="comment" char="#" />-        <RegExpr attribute="Data Types" context="#stay" String="!!\S+" />-        <RegExpr attribute="Alias" context="#stay" String="&amp;\S+" />-        <RegExpr attribute="Reference" context="#stay" String="\*\S+" />+        <RegExpr attribute="Data Types" context="#stay" String="&dataTypes;" />+        <RegExpr attribute="Alias" context="#stay" String="&alias;" />+        <RegExpr attribute="Reference" context="#stay" String="&reference;" />         <IncludeRules context="values" />         <DetectChar attribute="Operator" context="#pop!mapping-key" char="?" />         <RegExpr attribute="Operator" context="#stay" String="\-(?=\s|$)" />++        <DetectChar attribute="Operator" context="#pop!list" char="[" beginRegion="List" />+        <DetectChar attribute="Operator" context="#pop!hash" char="{" beginRegion="Hash" />+        <DetectChar attribute="String" context="#pop!string" char="'" beginRegion="String" />+        <DetectChar attribute="String" context="#pop!stringx" char="&quot;" beginRegion="String" />       </context> +      <!-- Highlight lists, hashes and strings after a data type, reference or alias -->+      <context attribute="Normal Text" lineEndContext="#pop" name="after-data" fallthrough="true" fallthroughContext="#pop">+        <RegExpr attribute="Comment" context="#pop!comment" String="(^|\s+)#" />+        <DetectSpaces />+        <RegExpr attribute="Data Types" context="#stay" String="&dataTypes;" />+        <RegExpr attribute="Alias" context="#stay" String="&alias;" />+        <RegExpr attribute="Reference" context="#stay" String="&reference;" />++        <DetectChar attribute="Operator" context="list" char="[" beginRegion="List" />+        <DetectChar attribute="Operator" context="hash" char="{" beginRegion="Hash" />+        <DetectChar attribute="String" context="string" char="'" beginRegion="String" />+        <DetectChar attribute="String" context="stringx" char="&quot;" beginRegion="String" />+      </context>+       <context attribute="Document Header" lineEndContext="#pop" name="header">-        <DetectChar attribute="Comment" context="comment" char="#" />-        <RegExpr attribute="Literal/Folded Operator" context="#pop!literal-block-simple" String="&literalOp;(?=&endValue;)" beginRegion="Literal" />+        <RegExpr attribute="Comment" context="comment" String="(^|\s+)#" />+        <RegExpr attribute="Literal/Folded Operator" context="header-literal-operator" String="\s&literalOp;(?=&endValue;)" lookAhead="true" />       </context>+      <context attribute="Document Header" lineEndContext="#pop#pop" name="header-literal-operator" fallthrough="true" fallthroughContext="#pop">+        <DetectSpaces />+        <RegExpr attribute="Literal/Folded Operator" context="#pop#pop!literal-block-simple" String="&literalOp;" beginRegion="Literal" />+      </context>        <context attribute="End of Document" lineEndContext="#stay" name="EOD">       </context>@@ -100,87 +134,102 @@       </context>        <context attribute="Attribute" lineEndContext="#pop#pop" name="attribute">-        <DetectChar attribute="Comment" context="comment" char="#" />+        <RegExpr attribute="Comment" context="comment" String="(^|\s+)#" />       </context>        <context attribute="Attribute" lineEndContext="#stay" name="list-attribute-inline">         <AnyChar attribute="Operator" context="#pop#pop" lookAhead="true" String=",]" />-        <DetectChar attribute="Comment" context="comment" char="#" />+        <RegExpr attribute="Comment" context="comment" String="(^|\s+)#" />       </context>       <context attribute="Attribute" lineEndContext="#stay" name="hash-attribute-inline">         <AnyChar attribute="Operator" context="#pop#pop" lookAhead="true" String=",}" />-        <DetectChar attribute="Comment" context="comment" char="#" />+        <RegExpr attribute="Comment" context="comment" String="(^|\s+)#" />       </context> +      <!-- Attribute -->+      <context attribute="Attribute" lineEndContext="#pop" name="dpoints-attribute-pre" fallthrough="true" fallthroughContext="#pop!attribute-pre">+        <DetectChar attribute="Key Points Operator" context="#pop!attribute-pre" char=":" /> <!-- Highlight two points after Key -->+      </context>       <context attribute="Attribute" lineEndContext="#pop" name="attribute-pre" fallthrough="true" fallthroughContext="attribute">+        <RegExpr attribute="Comment" context="comment" String="(^|\s+)#" />         <DetectSpaces/>-        <DetectChar attribute="Comment" context="comment" char="#" />         <DetectChar attribute="Operator" context="#stay" char="?" />-        <RegExpr attribute="Data Types" context="#stay" String="!!\S+" />+        <RegExpr attribute="Data Types" context="#stay" String="&dataTypes;" />         <DetectChar attribute="Operator" context="list" char="[" beginRegion="List" />         <DetectChar attribute="Operator" context="hash" char="{" beginRegion="Hash" />         <DetectChar attribute="String" context="attribute-string" char="'" beginRegion="String" />         <DetectChar attribute="String" context="attribute-stringx" char="&quot;" beginRegion="String" />-        <RegExpr attribute="Alias" context="#stay" String="&amp;\S+(?=\s+[\[\{])" />-        <RegExpr attribute="Reference" context="#stay" String="\*\S+(?=\s+[\[\{])" />-        <RegExpr attribute="Alias" context="attribute" String="&amp;\S+" />-        <RegExpr attribute="Reference" context="attribute" String="\*\S+" />+        <RegExpr attribute="Alias" context="#stay" String="&alias;(?=\s+[\[\{])" />+        <RegExpr attribute="Reference" context="#stay" String="&reference;(?=\s+[\[\{])" />+        <RegExpr attribute="Alias" context="attribute" String="&alias;" />+        <RegExpr attribute="Reference" context="attribute" String="&reference;" />         <IncludeRules context="values" />+        <RegExpr attribute="Literal/Folded Operator" context="#stay" String="&literalOp;(?=&endValue;)" />       </context>        <context attribute="Attribute" lineEndContext="#pop" name="default-attribute-pre-inline">+        <RegExpr attribute="Comment" context="comment" String="(^|\s+)#" />         <DetectSpaces/>-        <DetectChar attribute="Comment" context="comment" char="#" />          <DetectChar attribute="Operator" context="#stay" char="?" />-        <RegExpr attribute="Data Types" context="#stay" String="!!\S+" />+        <RegExpr attribute="Data Types" context="#stay" String="&dataTypes;" />         <DetectChar attribute="Operator" context="list" char="[" beginRegion="List" />         <DetectChar attribute="Operator" context="hash" char="{" beginRegion="Hash" />         <DetectChar attribute="String" context="attribute-string-inline" char="'" beginRegion="String" />         <DetectChar attribute="String" context="attribute-stringx-inline" char="&quot;" beginRegion="String" />-        <RegExpr attribute="Alias" context="#stay" String="&amp;\S+(?=\s+[\[\{])" />-        <RegExpr attribute="Reference" context="#stay" String="\*\S+(?=\s+[\[\{])" />+        <RegExpr attribute="Alias" context="#stay" String="&alias;(?=\s+[\[\{])" />+        <RegExpr attribute="Reference" context="#stay" String="&reference;(?=\s+[\[\{])" />       </context> +      <!-- Attribute Inline, Within List -->+      <context attribute="Attribute" lineEndContext="#pop" name="dpoints-list-attribute-pre-inline" fallthrough="true" fallthroughContext="#pop!list-attribute-pre-inline">+        <DetectChar attribute="Key Points Operator" context="#pop!list-attribute-pre-inline" char=":" /> <!-- Highlight two points after Key -->+      </context>       <context attribute="Attribute" lineEndContext="#pop" name="list-attribute-pre-inline" fallthrough="true" fallthroughContext="list-attribute-inline">         <IncludeRules context="default-attribute-pre-inline" />-        <RegExpr attribute="Alias" context="list-attribute-inline" String="&amp;\S+" />-        <RegExpr attribute="Reference" context="list-attribute-inline" String="\*\S+" />+        <RegExpr attribute="Alias" context="list-attribute-inline" String="&alias;" />+        <RegExpr attribute="Reference" context="list-attribute-inline" String="&reference;" />          <AnyChar attribute="Operator" context="#pop" lookAhead="true" String=",]" />         <IncludeRules context="values-inline" />       </context>++      <!-- Attribute Inline, Within Hash -->+      <context attribute="Attribute" lineEndContext="#pop" name="dpoints-hash-attribute-pre-inline" fallthrough="true" fallthroughContext="#pop!hash-attribute-pre-inline">+        <DetectChar attribute="Key Points Operator" context="#pop!hash-attribute-pre-inline" char=":" /> <!-- Highlight two points after Key -->+      </context>       <context attribute="Attribute" lineEndContext="#pop" name="hash-attribute-pre-inline" fallthrough="true" fallthroughContext="hash-attribute-inline">         <IncludeRules context="default-attribute-pre-inline" />-        <RegExpr attribute="Alias" context="hash-attribute-inline" String="&amp;\S+" />-        <RegExpr attribute="Reference" context="hash-attribute-inline" String="\*\S+" />+        <RegExpr attribute="Alias" context="hash-attribute-inline" String="&alias;" />+        <RegExpr attribute="Reference" context="hash-attribute-inline" String="&reference;" />          <AnyChar attribute="Operator" context="#pop" lookAhead="true" String=",}" />         <IncludeRules context="values-inline" />       </context> +      <!-- List -->       <!-- Context "find-values-list" highlights values and then sends to "list-element" -->-      <context attribute="List" lineEndContext="#stay" name="list" fallthrough="true" fallthroughContext="#pop!find-values-list">+      <context attribute="List" lineEndContext="#stay" name="list" fallthrough="true" fallthroughContext="#pop!find-values-list" noIndentationBasedFolding="true">+        <RegExpr attribute="Comment" context="comment" String="(^|\s+)#" />         <DetectSpaces />         <DetectChar attribute="Operator" context="#pop!find-values-list" char="?" />-        <DetectChar attribute="Comment" context="comment" char="#" />       </context>-      <context attribute="List" lineEndContext="#stay" name="list-element">-        <DetectChar attribute="Comment" context="comment" char="#" />+      <context attribute="List" lineEndContext="#stay" name="list-element" noIndentationBasedFolding="true">+        <RegExpr attribute="Comment" context="comment" String="(^|\s+)#" />          <DetectChar attribute="Operator" context="#pop" char="]" endRegion="List" />         <DetectChar attribute="Operator" context="list" char="[" beginRegion="List" />         <DetectChar attribute="Operator" context="hash" char="{" beginRegion="Hash" /> -        <RegExpr attribute="Key" context="list-attribute-pre-inline" String="[^&quot;'#\-,\]\s][^:#,\]]*:(?=\s|$)"/>-        <RegExpr attribute="Key" context="list-attribute-pre-inline" String="\-([^\s:#,\]][^:#,\]]*)?\:(?=\s|$)"/>-        <RegExpr attribute="Key" context="list-attribute-pre-inline" String="&keyDQ;:(?=\s|$)"/>-        <RegExpr attribute="Key" context="list-attribute-pre-inline" String="&keySQ;:(?=\s|$)"/>-        <RegExpr attribute="Key" context="list-attribute-pre-inline" String=":(?=\s|$)" firstNonSpace="true" />+        <RegExpr attribute="Key" context="dpoints-list-attribute-pre-inline" String="[^&quot;'#\-,\]\s][^:#,\]]*(?=:(\s|$))"/>+        <RegExpr attribute="Key" context="dpoints-list-attribute-pre-inline" String="\-([^\s:#,\]][^:#,\]]*)?(?=:(\s|$))"/>+        <RegExpr attribute="Key" context="dpoints-list-attribute-pre-inline" String="&keyDQ;(?=:(\s|$))"/>+        <RegExpr attribute="Key" context="dpoints-list-attribute-pre-inline" String="&keySQ;(?=:(\s|$))"/>+        <RegExpr attribute="Key Points Operator" context="list-attribute-pre-inline" String=":(?=\s|$)" firstNonSpace="true" /> -        <RegExpr attribute="Data Types" context="#stay" String="!!\S+" />-        <RegExpr attribute="Alias" context="#stay" String="&amp;\S+" />-        <RegExpr attribute="Reference" context="#stay" String="\*\S+" />+        <RegExpr attribute="Data Types" context="#stay" String="&dataTypes;" />+        <RegExpr attribute="Alias" context="#stay" String="&alias;" />+        <RegExpr attribute="Reference" context="#stay" String="&reference;" />         <DetectChar attribute="String" context="string" char="'" beginRegion="String" />         <DetectChar attribute="String" context="stringx" char="&quot;" beginRegion="String" /> @@ -188,75 +237,77 @@         <IncludeRules context="values-list" />       </context> -      <context attribute="Hash" lineEndContext="#stay" name="hash" fallthrough="true" fallthroughContext="#pop!hash-element">+      <!-- Hash -->+      <context attribute="Hash" lineEndContext="#stay" name="hash" fallthrough="true" fallthroughContext="#pop!hash-element" noIndentationBasedFolding="true">+        <RegExpr attribute="Comment" context="comment" String="(^|\s+)#" />         <DetectSpaces />         <DetectChar attribute="Operator" context="#pop!hash-element" char="?" />-        <DetectChar attribute="Comment" context="comment" char="#" />       </context>-      <context attribute="Hash" lineEndContext="#stay" name="hash-element">+      <context attribute="Hash" lineEndContext="#stay" name="hash-element" noIndentationBasedFolding="true">+        <RegExpr attribute="Comment" context="comment" String="(^|\s+)#" />         <DetectSpaces/>-        <DetectChar attribute="Comment" context="comment" char="#" /> -        <RegExpr attribute="Key" context="hash-attribute-pre-inline" String="[^\s&quot;'#\-,\}\s][^:#,\}]*:(?=\s|$)"/>-        <RegExpr attribute="Key" context="hash-attribute-pre-inline" String="\-([^\s:#,\}][^:#,\}]*)?\:(?=\s|$)"/>-        <RegExpr attribute="Key" context="hash-attribute-pre-inline" String="&keyDQ;:(?=\s|$)"/>-        <RegExpr attribute="Key" context="hash-attribute-pre-inline" String="&keySQ;:(?=\s|$)"/>-        <RegExpr attribute="Key" context="hash-attribute-pre-inline" String=":(?=\s|$)"/>+        <RegExpr attribute="Key" context="dpoints-hash-attribute-pre-inline" String="[^\s&quot;'#\-,\}\s][^:#,\}]*(?=:(\s|$))"/>+        <RegExpr attribute="Key" context="dpoints-hash-attribute-pre-inline" String="\-([^\s:#,\}][^:#,\}]*)?(?=:(\s|$))"/>+        <RegExpr attribute="Key" context="dpoints-hash-attribute-pre-inline" String="&keyDQ;(?=:(\s|$))"/>+        <RegExpr attribute="Key" context="dpoints-hash-attribute-pre-inline" String="&keySQ;(?=:(\s|$))"/>+        <RegExpr attribute="Key Points Operator" context="hash-attribute-pre-inline" String=":(?=\s|$)"/>          <DetectChar attribute="Operator" context="#pop" char="}" endRegion="Hash" />         <DetectChar attribute="Operator" context="#pop!hash" char="," />          <!-- This improves highlighting in keys with multiple lines -->-        <RegExpr attribute="Data Types" context="#stay" String="!!\S+" />-        <RegExpr attribute="Alias" context="#stay" String="&amp;\S+" />-        <RegExpr attribute="Reference" context="#stay" String="\*\S+" />+        <RegExpr attribute="Data Types" context="#stay" String="&dataTypes;" />+        <RegExpr attribute="Alias" context="#stay" String="&alias;" />+        <RegExpr attribute="Reference" context="#stay" String="&reference;" />         <DetectChar attribute="String" context="string" char="'" beginRegion="String" />         <DetectChar attribute="String" context="stringx" char="&quot;" beginRegion="String" />       </context> -      <context attribute="String" lineEndContext="#stay" name="attribute-string">+      <!-- Strings -->+      <context attribute="String" lineEndContext="#stay" name="attribute-string" noIndentationBasedFolding="true">         <DetectIdentifier />         <IncludeRules context="escaped-char-singleq" />         <DetectChar attribute="String" context="attribute-end" char="'" endRegion="String" />       </context> -      <context attribute="String" lineEndContext="#stay" name="attribute-stringx">+      <context attribute="String" lineEndContext="#stay" name="attribute-stringx" noIndentationBasedFolding="true">         <DetectIdentifier />         <IncludeRules context="escaped-char-doubleq" />         <DetectChar attribute="String" context="attribute-end" char="&quot;" endRegion="String" />       </context> -      <context attribute="String" lineEndContext="#stay" name="attribute-string-inline">+      <context attribute="String" lineEndContext="#stay" name="attribute-string-inline" noIndentationBasedFolding="true">           <DetectIdentifier />           <IncludeRules context="escaped-char-singleq" />           <DetectChar attribute="String" context="attribute-end-inline" char="'" endRegion="String" />       </context> -      <context attribute="String" lineEndContext="#stay" name="attribute-stringx-inline">+      <context attribute="String" lineEndContext="#stay" name="attribute-stringx-inline" noIndentationBasedFolding="true">           <DetectIdentifier />           <IncludeRules context="escaped-char-doubleq" />           <DetectChar attribute="String" context="attribute-end-inline" char="&quot;" endRegion="String" />       </context>        <context attribute="Error" lineEndContext="#pop#pop#pop" name="attribute-end">+          <RegExpr attribute="Comment" context="comment" String="(^|\s+)#" />           <DetectSpaces attribute="Normal Text" context="#stay"/>-          <DetectChar attribute="Comment" context="comment" char="#" />       </context>        <context attribute="Error" lineEndContext="#pop#pop#pop" name="attribute-end-inline">+          <RegExpr attribute="Comment" context="comment" String="(^|\s+)#" />           <DetectSpaces attribute="Normal Text" context="#stay"/>           <AnyChar attribute="String" context="#pop#pop#pop"  lookAhead="true" String="}]"/>           <DetectChar attribute="Operator" context="#pop#pop#pop" lookAhead="true" char="," />-          <DetectChar attribute="Comment" context="comment" char="#" />       </context> -      <context attribute="String" lineEndContext="#stay" name="string">+      <context attribute="String" lineEndContext="#stay" name="string" noIndentationBasedFolding="true">         <DetectIdentifier />         <IncludeRules context="escaped-char-singleq" />         <DetectChar attribute="String" context="#pop" char="'" endRegion="String" />       </context> -      <context attribute="String" lineEndContext="#stay" name="stringx">+      <context attribute="String" lineEndContext="#stay" name="stringx" noIndentationBasedFolding="true">         <DetectIdentifier />         <IncludeRules context="escaped-char-doubleq" />         <DetectChar attribute="String" context="#pop" char="&quot;" endRegion="String" />@@ -351,8 +402,10 @@              >  key: !!type >-              >   ^Start the folded text         -->+        <RegExpr attribute="Key Points Operator" context="literal-block-key" column="0"+                 String="^(&space;*)\:(?=\s+(?:(?:&keyDQ;|&keySQ;|[^#])*[^#\w\|&lt;&gt;&quot;'])?&literalOp;&endValue;)" />         <RegExpr attribute="Key" context="literal-block-key" column="0"-                 String="^(&space;*)(?:[^&quot;'#\-\?\s][^:#]*|\-(?:[^\s:#][^:#]*)?|&keyDQ;|&keySQ;)?\:(?=\s+(?:(?:&keyDQ;|&keySQ;|[^#])*[^#\w\|&lt;&gt;&quot;'])?&literalOp;&endValue;)" />+                 String="^(&space;*)(?:[^&quot;'#\-\?\s][^:#]*|\-(?:[^\s:#][^:#]*)?|&keyDQ;|&keySQ;)(?=\:\s+(?:(?:&keyDQ;|&keySQ;|[^#])*[^#\w\|&lt;&gt;&quot;'])?&literalOp;&endValue;)" />          <!-- CASE 4: Is there an operator "?" or "-" at the beginning of the line.              NOTE: Nested characters "-" and "?" are considered as part of the indentation.@@ -385,7 +438,7 @@        <!-- If the line with the literal operator starts with the "-" or "?" operator.            NOTE: The indentation capture is limited to 6 nested operators. -->-      <context attribute="Normal Text" lineEndContext="#pop" name="start-literal-block-withdash">+      <context attribute="Normal Text" lineEndContext="#pop" name="start-literal-block-withdash" noIndentationBasedFolding="true">         <!-- With Key: Capture the Key indentation -->         <RegExpr attribute="Operator" context="#pop!literal-block-key-withdash-s2" String="^(&space;*)[\?\-](&space;*)(?=&keyAfterOp;:\s)" column="0"/>         <RegExpr attribute="Operator" context="#pop!literal-block-key-withdash-s3" String="^(&space;*)[\?\-](&space;*)[\?\-](&space;*)(?=&keyAfterOp;:\s)" column="0"/>@@ -402,157 +455,163 @@         <RegExpr attribute="Operator" context="#pop!literal-block-withdash-s6" String="^(&space;*)[\?\-](&space;*)[\?\-](&space;*)[\?\-](&space;*)[\?\-](&space;*)[\?\-](&space;*)[\?\-]\s*(?=[^#\-\?\s]|\-[^\s#])" column="0"/>       </context>       <!-- Capture the indentation of data type, reference or alias  -->-      <context attribute="Normal Text" lineEndContext="#pop" name="start-literal-block-other">+      <context attribute="Normal Text" lineEndContext="#pop" name="start-literal-block-other" noIndentationBasedFolding="true">         <!-- The text with the same indentation will be considered literal -->-        <RegExpr attribute="Data Types" context="#pop!literal-block-after-data" String="^(&space;+)!!\S+" column="0" />-        <RegExpr attribute="Alias" context="#pop!literal-block-after-data" String="^(&space;+)&amp;\S+" column="0" />-        <RegExpr attribute="Reference" context="#pop!literal-block-after-data" String="^(&space;+)\*\S+" column="0" />+        <RegExpr attribute="Data Types" context="#pop!literal-block-after-data" String="^(&space;+)&dataTypes;" column="0" />+        <RegExpr attribute="Alias" context="#pop!literal-block-after-data" String="^(&space;+)&alias;" column="0" />+        <RegExpr attribute="Reference" context="#pop!literal-block-after-data" String="^(&space;+)&reference;" column="0" />         <!-- The text after a space will be considered literal (empty text is captured) -->-        <RegExpr attribute="Data Types" context="#pop!literal-block-withdash-s1" String="^()!!\S+" column="0" />-        <RegExpr attribute="Alias" context="#pop!literal-block-withdash-s1" String="^()&amp;\S+" column="0" />-        <RegExpr attribute="Reference" context="#pop!literal-block-withdash-s1" String="^()\*\S+" column="0" />+        <RegExpr attribute="Data Types" context="#pop!literal-block-withdash-s1" String="^()&dataTypes;" column="0" />+        <RegExpr attribute="Alias" context="#pop!literal-block-withdash-s1" String="^()&alias;" column="0" />+        <RegExpr attribute="Reference" context="#pop!literal-block-withdash-s1" String="^()&reference;" column="0" />       </context>        <!-- Highlight data/attribute before the literal operator (Note that if there is a line            break within a string or bracket, the literal line will not be highlighted). -->-      <context attribute="Normal Text" lineEndContext="#pop#pop" name="before-literal-operator">+      <context attribute="Attribute" lineEndContext="#pop#pop" name="before-literal-operator" noIndentationBasedFolding="true">         <RegExpr attribute="Literal/Folded Operator" context="#pop!end-literal-operator" String="&literalOp;(?=&endValue;)" beginRegion="Literal" />          <RegExpr attribute="Error" context="#pop#pop" String="([&amp;\*]|!!)\S*&literalOp;(?=&endValue;)" />-        <RegExpr attribute="Data Types" context="#stay" String="!!\S+" />-        <RegExpr attribute="Alias" context="#stay" String="&amp;\S+" />-        <RegExpr attribute="Reference" context="#stay" String="\*\S+" />+        <RegExpr attribute="Data Types" context="#stay" String="&dataTypes;" />+        <RegExpr attribute="Alias" context="#stay" String="&alias;" />+        <RegExpr attribute="Reference" context="#stay" String="&reference;" />          <DetectChar attribute="Operator" context="list" char="[" beginRegion="List" />         <DetectChar attribute="Operator" context="hash" char="{" beginRegion="Hash" />         <DetectChar attribute="String" context="string" char="'" beginRegion="String" />         <DetectChar attribute="String" context="stringx" char="&quot;" beginRegion="String" />       </context>-      <context attribute="Attribute" lineEndContext="#pop#pop" name="key-before-literal-operator">++      <context attribute="Normal Text" lineEndContext="#pop#pop" name="dpoints-key-before-literal-operator" fallthrough="true" fallthroughContext="#pop#pop" noIndentationBasedFolding="true">+        <DetectChar attribute="Key Points Operator" context="#pop!key-before-literal-operator" char=":" />+      </context>+      <context attribute="Attribute" lineEndContext="#pop#pop" name="key-before-literal-operator" noIndentationBasedFolding="true">         <IncludeRules context="before-literal-operator" />         <DetectChar attribute="Operator" context="#stay" char="?" />       </context>-      <context attribute="Normal Text" lineEndContext="#pop" name="end-literal-operator">-        <DetectChar attribute="Comment" context="#pop!comment" char="#" />+      <context attribute="Attribute" lineEndContext="#pop" name="end-literal-operator" noIndentationBasedFolding="true">+        <RegExpr attribute="Comment" context="#pop!comment" String="(^|\s+)#" />       </context>        <!-- Common rules for the content of the literal blocks -->-      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-default">+      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-default" noIndentationBasedFolding="true">         <!-- End literal/folded block -->         <RegExpr attribute="Normal Text" context="#pop" String="^\s*\S" lookAhead="true" column="0" endRegion="Literal" />         <!-- Find literal/folded operator -->         <RegExpr context="before-literal-operator" String="\S" lookAhead="true" />       </context>-      <context attribute="Normal Text" lineEndContext="#pop" name="literal-block-key-default">+      <context attribute="Normal Text" lineEndContext="#pop" name="literal-block-key-default" noIndentationBasedFolding="true">         <!-- End literal/folded block -->         <RegExpr attribute="Normal Text" context="#pop" String="^\s*\S" lookAhead="true" column="0" endRegion="Literal" />         <!-- Detect Key before the literal/folded operator -->-        <RegExpr attribute="Key" context="key-before-literal-operator" String="&keyAfterOp;:(?=\s)" />+        <RegExpr attribute="Key" context="dpoints-key-before-literal-operator" String="&keyAfterOp;(?=:\s)" />         <RegExpr attribute="Normal Text" context="#pop" String="\S" lookAhead="true" endRegion="Literal" />       </context>        <!-- Content of the literal block: -->        <!-- If the literal operator is starting the line (after a space, use block indentation) -->-      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-only-operator" dynamic="true">+      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-only-operator" dynamic="true" noIndentationBasedFolding="true">         <RegExpr attribute="Literal/Folded Block" context="#stay" String="^%1.*$" dynamic="true" column="0" />          <RegExpr attribute="Normal Text" context="#pop" String="^\s*\S" lookAhead="true" column="0" endRegion="Literal" />-        <DetectChar attribute="Comment" context="comment" char="#" />+        <RegExpr attribute="Comment" context="comment" String="(^|\s)#" />         <RegExpr context="#pop" String="\S" lookAhead="true" endRegion="Literal" />       </context>       <!-- If the literal operator is the first character of a line (or after header) -->-      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-simple">+      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-simple" noIndentationBasedFolding="true">         <RegExpr attribute="Literal/Folded Block" context="#stay" String="^\s.*$" column="0" />          <RegExpr attribute="Normal Text" context="#pop" String="^\s*\S" lookAhead="true" column="0" endRegion="Literal" />-        <DetectChar attribute="Comment" context="comment" char="#" />+        <RegExpr attribute="Comment" context="comment" String="(^|\s)#" />       </context>       <!-- If there is a data type or other content before the liretal operator (use block indentation) -->-      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-after-data" dynamic="true">+      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-after-data" dynamic="true" noIndentationBasedFolding="true">         <RegExpr attribute="Literal/Folded Block" context="#stay" String="^%1.*$" dynamic="true" column="0" />          <RegExpr attribute="Normal Text" context="#pop" String="^\s*\S" lookAhead="true" column="0" endRegion="Literal" />         <RegExpr context="before-literal-operator" String="\S" lookAhead="true" />       </context>       <!-- If there is a key before the literal operator -->-      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-key" dynamic="true">+      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-key" dynamic="true" noIndentationBasedFolding="true">         <RegExpr attribute="Literal/Folded Block" context="#stay" String="^%1\s.*$" dynamic="true" column="0" />          <RegExpr attribute="Normal Text" context="#pop" String="^\s*\S" lookAhead="true" column="0" endRegion="Literal" />         <!-- Attribute of the Key (the Key was previously highlighted) -->+        <RegExpr attribute="Key Points Operator" context="key-before-literal-operator" String=":\s" />         <RegExpr context="key-before-literal-operator" String="\S" lookAhead="true" />       </context>        <!-- If there are dashes/"?" before the literal operator -->-      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-withdash-s1" dynamic="true">+      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-withdash-s1" dynamic="true" noIndentationBasedFolding="true">         <RegExpr attribute="Literal/Folded Block" context="#stay" String="^%1\s.*$" dynamic="true" column="0" />         <IncludeRules context="literal-block-default" />       </context>-      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-withdash-s2" dynamic="true">+      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-withdash-s2" dynamic="true" noIndentationBasedFolding="true">         <RegExpr attribute="Literal/Folded Block" context="#stay" String="^%1%2&space;\s.*$" dynamic="true" column="0" />         <IncludeRules context="literal-block-default" />       </context>-      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-withdash-s3" dynamic="true">+      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-withdash-s3" dynamic="true" noIndentationBasedFolding="true">         <RegExpr attribute="Literal/Folded Block" context="#stay" String="^%1%2%3&space;{2}\s.*$" dynamic="true" column="0" />         <IncludeRules context="literal-block-default" />       </context>-      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-withdash-s4" dynamic="true">+      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-withdash-s4" dynamic="true" noIndentationBasedFolding="true">         <RegExpr attribute="Literal/Folded Block" context="#stay" String="^%1%2%3%4&space;{3}\s.*$" dynamic="true" column="0" />         <IncludeRules context="literal-block-default" />       </context>-      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-withdash-s5" dynamic="true">+      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-withdash-s5" dynamic="true" noIndentationBasedFolding="true">         <RegExpr attribute="Literal/Folded Block" context="#stay" String="^%1%2%3%4%5&space;{4}\s.*$" dynamic="true" column="0" />         <IncludeRules context="literal-block-default" />       </context>-      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-withdash-s6" dynamic="true">+      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-withdash-s6" dynamic="true" noIndentationBasedFolding="true">         <RegExpr attribute="Literal/Folded Block" context="#stay" String="^%1%2%3%4%5%6&space;{5}\s.*$" dynamic="true" column="0" />         <IncludeRules context="literal-block-default" />       </context>       <!-- If there are dashes/"?" and a Key before the literal operator -->-      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-key-withdash-s2" dynamic="true">+      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-key-withdash-s2" dynamic="true" noIndentationBasedFolding="true">         <RegExpr attribute="Literal/Folded Block" context="#stay" String="^%1%2&space;\s.*$" dynamic="true" column="0" />         <IncludeRules context="literal-block-key-default" />       </context>-      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-key-withdash-s3" dynamic="true">+      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-key-withdash-s3" dynamic="true" noIndentationBasedFolding="true">         <RegExpr attribute="Literal/Folded Block" context="#stay" String="^%1%2%3&space;{2}\s.*$" dynamic="true" column="0" />         <IncludeRules context="literal-block-key-default" />       </context>-      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-key-withdash-s4" dynamic="true">+      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-key-withdash-s4" dynamic="true" noIndentationBasedFolding="true">         <RegExpr attribute="Literal/Folded Block" context="#stay" String="^%1%2%3%4&space;{3}\s.*$" dynamic="true" column="0" />         <IncludeRules context="literal-block-key-default" />       </context>-      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-key-withdash-s5" dynamic="true">+      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-key-withdash-s5" dynamic="true" noIndentationBasedFolding="true">         <RegExpr attribute="Literal/Folded Block" context="#stay" String="^%1%2%3%4%5&space;{4}\s.*$" dynamic="true" column="0" />         <IncludeRules context="literal-block-key-default" />       </context>-      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-key-withdash-s6" dynamic="true">+      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-key-withdash-s6" dynamic="true" noIndentationBasedFolding="true">         <RegExpr attribute="Literal/Folded Block" context="#stay" String="^%1%2%3%4%5%6&space;{5}\s.*$" dynamic="true" column="0" />         <IncludeRules context="literal-block-key-default" />       </context>-      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-key-withdash-s7" dynamic="true">+      <context attribute="Normal Text" lineEndContext="#stay" name="literal-block-key-withdash-s7" dynamic="true" noIndentationBasedFolding="true">         <RegExpr attribute="Literal/Folded Block" context="#stay" String="^%1%2%3%4%5%6%7&space;{6}\s.*$" dynamic="true" column="0" />         <IncludeRules context="literal-block-key-default" />       </context>     </contexts>      <itemDatas>-      <itemData name="Normal Text" defStyleNum="dsNormal" />-      <itemData name="List" defStyleNum="dsNormal" />-      <itemData name="Hash" defStyleNum="dsNormal" />+      <itemData name="Normal Text" defStyleNum="dsAttribute" />+      <itemData name="Attribute" defStyleNum="dsAttribute" />+      <itemData name="List" defStyleNum="dsAttribute" />+      <itemData name="Hash" defStyleNum="dsAttribute" />       <itemData name="Comment" defStyleNum="dsComment" />       <itemData name="End of Document" defStyleNum="dsComment" />-      <itemData name="Attribute" defStyleNum="dsAttribute" />-      <itemData name="Document Header" defStyleNum="dsOthers" />-      <itemData name="Data Types" defStyleNum="dsDataType" />-      <itemData name="Alias" defStyleNum="dsDataType" />-      <itemData name="Reference" defStyleNum="dsDataType" />-      <itemData name="Key" defStyleNum="dsFunction" />-      <itemData name="Directive" defStyleNum="dsOthers" />+      <itemData name="Document Header" defStyleNum="dsPreprocessor" />+      <itemData name="Data Types" defStyleNum="dsOthers" />+      <itemData name="Alias" defStyleNum="dsOthers" />+      <itemData name="Reference" defStyleNum="dsOthers" />+      <itemData name="Key" defStyleNum="dsFunction" bold="1" />+      <itemData name="Directive" defStyleNum="dsPreprocessor" />+      <itemData name="Key Points Operator" defStyleNum="dsKeyword" />       <itemData name="Operator" defStyleNum="dsKeyword" />       <itemData name="String" defStyleNum="dsString" />       <itemData name="Escaped Character" defStyleNum="dsSpecialChar" />-      <itemData name="Literal/Folded Operator" defStyleNum="dsString" bold="1" />+      <itemData name="Literal/Folded Operator" defStyleNum="dsChar" bold="1" />       <itemData name="Literal/Folded Block" defStyleNum="dsNormal" />       <itemData name="Null" defStyleNum="dsChar" />       <itemData name="Boolean" defStyleNum="dsChar" />@@ -564,6 +623,10 @@   </highlighting>    <general>+    <folding indentationsensitive="1" />+    <emptyLines>+      <emptyLine regexpr="(?:\s+|\s*#.*)"/>+    </emptyLines>     <comments>       <comment name="singleLine" start="#" position="afterwhitespace" />     </comments>