Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions src/languages/bash.js
Original file line number Diff line number Diff line change
Expand Up @@ -145,6 +145,13 @@ export default function(hljs) {
// to consume paths to prevent keyword matches inside them
const PATH_MODE = { match: /(\/[a-z._-]+)+/ };

// Command long options (--option) - only match long options to avoid conflicts
const OPTION = {
className: 'attribute',
begin: /\s--[\w-]+/,
relevance: 0
};

// http://www.gnu.org/software/bash/manual/html_node/Shell-Builtin-Commands.html
const SHELL_BUILT_INS = [
"break",
Expand Down Expand Up @@ -397,6 +404,7 @@ export default function(hljs) {
COMMENT,
HERE_DOC,
PATH_MODE,
OPTION,
QUOTE_STRING,
ESCAPED_QUOTE,
APOS_STRING,
Expand Down
2 changes: 1 addition & 1 deletion test/markup/bash/token-containing-keyword.expect.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<span class="hljs-comment"># a keyword as part of an option</span>
mycmd --disable-foo
mycmd<span class="hljs-attribute"> --disable-foo</span>

<span class="hljs-comment"># a keyword as part of a parameter</span>
some-cmd set-some-setting
Expand Down
14 changes: 7 additions & 7 deletions test/markup/shell/command-continuation.expect.txt
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
<span class="hljs-meta prompt_">$ </span><span class="language-bash">docker run \
--publish=7474:7474 --publish=7687:7687 \
--volume=/neo4j/data:/data \
--volume=/neo4j/plugins:/plugins \
--volume=/neo4j/conf:/conf \
--volume=/logs/neo4j:/logs \
--user=<span class="hljs-string">&quot;<span class="hljs-subst">$(id -u neo4j)</span>:<span class="hljs-subst">$(id -g neo4j)</span>&quot;</span> \
--group-add=<span class="hljs-variable">$groups</span> \
<span class="hljs-attribute"> --publish</span>=7474:7474<span class="hljs-attribute"> --publish</span>=7687:7687 \
<span class="hljs-attribute"> --volume</span>=/neo4j/data:/data \
<span class="hljs-attribute"> --volume</span>=/neo4j/plugins:/plugins \
<span class="hljs-attribute"> --volume</span>=/neo4j/conf:/conf \
<span class="hljs-attribute"> --volume</span>=/logs/neo4j:/logs \
<span class="hljs-attribute"> --user</span>=<span class="hljs-string">&quot;<span class="hljs-subst">$(id -u neo4j)</span>:<span class="hljs-subst">$(id -g neo4j)</span>&quot;</span> \
<span class="hljs-attribute"> --group-add</span>=<span class="hljs-variable">$groups</span> \
neo4j:3.4</span>
<span class="hljs-meta prompt_">&gt; </span><span class="language-bash">/bin/cat \.travis.yml\
-b | <span class="hljs-built_in">head</span> -n1</span>
Expand Down