Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
O
oh-my-zsh
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
JIRA
JIRA
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
github
oh-my-zsh
Commits
66e2284a
Commit
66e2284a
authored
Nov 15, 2019
by
Aaron N. Brock
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add support for chroma
parent
e453731f
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
38 additions
and
9 deletions
+38
-9
colorize.plugin.zsh
plugins/colorize/colorize.plugin.zsh
+38
-9
No files found.
plugins/colorize/colorize.plugin.zsh
View file @
66e2284a
...
...
@@ -3,21 +3,46 @@ alias ccat='colorize_via_pygmentize'
alias
cless
=
'colorize_via_pygmentize_less'
colorize_via_pygmentize
()
{
if
!
((
$+
commands[pygmentize]
))
;
then
echo
"package 'Pygments' is not installed!"
if
[[
$ZSH_COLORIZE_TOOL
!=
"chroma"
&&
$ZSH_COLORIZE_TOOL
!=
"pygmentize"
]]
;
then
echo
"ZSH_COLORIZE_TOOL not recognized. Options are 'pygmentize' or 'chroma'"
return
1
fi
# If the environment varianle ZSH_COLORIZE_STYLE
if
[
-z
$ZSH_COLORIZE_TOOL
]
;
then
if
((
$+
commands[pygmentize]
))
;
then
ZSH_COLORIZE_TOOL
=
"pygmentize"
elif
((
$+
commands[chroma]
))
;
then
ZSH_COLORIZE_TOOL
=
"chroma"
else
echo
"niether 'Pygments' nor 'chroma' is not installed!"
return
1
fi
fi
echo
"Tool:
$ZSH_COLORIZE_TOOL
"
# If the environment variable ZSH_COLORIZE_STYLE
# is set, use that theme instead. Otherwise,
# use the default.
if
[
-z
$ZSH_COLORIZE_STYLE
]
;
then
ZSH_COLORIZE_STYLE
=
"default"
if
[[
$ZSH_COLORIZE_TOOL
==
"pygmentize"
]]
;
then
ZSH_COLORIZE_STYLE
=
"default"
else
# Choosing 'emacs' to match pygmentize's default as per:
# https://github.com/pygments/pygments/blob/master/pygments/styles/default.py#L19
ZSH_COLORIZE_STYLE
=
"emacs"
fi
fi
echo
"color style:
$ZSH_COLORIZE_STYLE
"
# pygmentize stdin if no arguments passed
if
[
$#
-eq
0
]
;
then
pygmentize
-O
style
=
"
$ZSH_COLORIZE_STYLE
"
-g
if
[[
$ZSH_COLORIZE_TOOL
==
"pygmentize"
]]
;
then
pygmentize
-O
style
=
"
$ZSH_COLORIZE_STYLE
"
-g
else
chroma
--style
=
"
$ZSH_COLORIZE_STYLE
"
fi
return
$?
fi
...
...
@@ -27,11 +52,15 @@ colorize_via_pygmentize() {
local
FNAME lexer
for
FNAME
in
"
$@
"
do
lexer
=
$(
pygmentize
-N
"
$FNAME
"
)
if
[[
$lexer
!=
text
]]
;
then
pygmentize
-O
style
=
"
$ZSH_COLORIZE_STYLE
"
-l
"
$lexer
"
"
$FNAME
"
if
[[
$ZSH_COLORIZE_TOOL
==
"pygmentize"
]]
;
then
lexer
=
$(
pygmentize
-N
"
$FNAME
"
)
if
[[
$lexer
!=
text
]]
;
then
pygmentize
-O
style
=
"
$ZSH_COLORIZE_STYLE
"
-l
"
$lexer
"
"
$FNAME
"
else
pygmentize
-O
style
=
"
$ZSH_COLORIZE_STYLE
"
-g
"
$FNAME
"
fi
else
pygmentize
-O
style
=
"
$ZSH_COLORIZE_STYLE
"
-g
"
$FNAME
"
chroma
--style
=
"
$ZSH_COLORIZE_STYLE
"
"
$FNAME
"
fi
done
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment