එහි ප්රතිදානය ඒකවර්ණ නොකිරීමට මට අඩුවෙන් ලබා ගත හැකිද?
උදා: සිට git diff
ලැබෙන ප්රතිදානය වර්ණවත් නමුත් git diff | less
එසේ නොවේ.
less
පමණයි.
එහි ප්රතිදානය ඒකවර්ණ නොකිරීමට මට අඩුවෙන් ලබා ගත හැකිද?
උදා: සිට git diff
ලැබෙන ප්රතිදානය වර්ණවත් නමුත් git diff | less
එසේ නොවේ.
less
පමණයි.
Answers:
භාවිත:
git diff --color=always | less -r
--color=always
git
ප්රතිදානය පයිප්පයක් වුවද (ටීටී එකක් නොවේ) වර්ණ කේත ප්රතිදානය කිරීමට පැවසිය යුතුය. හා -r
කියන්න තියෙනවා less
එම වර්ණ කේත සහ අනෙකුත් පලා අනුක්රමය අර්ථ නිරූපණය කිරීමට. -R
ANSI වර්ණ කේත සඳහා පමණක් භාවිතා කරන්න .
git config color.ui true
වර්ණ ප්රතිදානය ලබා ගැනීමට සහ දිගු ප්රතිදානයන් සඳහා පේජරයක් ස්වයංක්රීයව ධාවනය කිරීමට ප්රමාණවත් විය යුතුය .
watch --color 'git diff --cached --color=always'
සහ එහි මිතුරන්ට ඔබට තවත් පුදුමාකාර බවක් ගෙන එනු ඇත.
less -R
වඩා හොඳ (හෝ export LESS=R
ඇතුළත /etc/profile
) නොවේද? ANSI "වර්ණ" ගැලවීමේ අනුපිළිවෙල හැර වෙනත් කිසිවක් ප්රදර්ශනය කිරීමට ඔබ එයට ඉඩ දෙන්නේ ඇයි? එසේම, man පිටුව පවසන්නේWarning: when the -r option is used, less cannot keep track of the actual appearance of the screen (since this depends on how the screen responds to each type of control character). Thus, various display problems may result, such as long lines being split in the wrong place.
-r
විකල්පය සඳහන් කිරීමට අමතක වූවා නම් , ඔබට less
විමසුමේදී "-r" ටයිප් කළ හැකිය . මෙය ඇත්ත වශයෙන්ම බොහෝ හෝ අඩු විකල්ප සමඟ ක්රියා කරයි (එනම්, -i
නොසලකා හැරීම සක්රිය කිරීමට).
grep --color=always
එකම ආකාරයකින් ක්රියා කරයි. මෙය මෙම ප්රශ්නයේ හෝ පිළිතුරේ කොටසක් නොවේ, නමුත් මම මෙහි පැමිණියේ එම ප්රශ්නය ගැන ගොග්ලිං කිරීමෙනි.
තවත් විකල්පයක් වනුයේ වර්ණ සක්රීය කිරීම සහ ඔබේ පේජරය ලෙස 'අඩු -r' භාවිතා කිරීමයි.
git config --global color.ui true
git config --global core.pager 'less -r'
මෙහි ප්රති results ලය
[color]
ui = true
[core]
pager = less -r
ඔබගේ ~ / .gitconfig හි
වැඩි විස්තර සඳහා Pro Git පොත බලන්න .
සඳහා විය හැකි අගයන් color.ui
git-config හි man පිටුවෙන් සොයාගත හැකිය. ප්රතිදානය man git-config | grep "color.ui$" -A8
වේ
color.ui
This variable determines the default value for variables such as color.diff and
color.grep that control the use of color per command family. Its scope will expand as
more commands learn configuration to set a default for the --color option. Set it to
false or never if you prefer Git commands not to use color unless enabled explicitly
with some other configuration or the --color option. Set it to always if you want all
output not intended for machine consumption to use color, to true or auto (this is the
default since Git 1.8.4) if you want such output to use color when written to the
terminal.
color.ui true
එය පේජරයක් සමඟ ක්රියා නොකරන බව මට පෙනී color.ui always
ගියේය. පිළිතුර පළ කිරීමෙන් පසු මෙය වෙනස් වන්නට ඇත.
color.ui true
වැනි විධාන සඳහා වැඩ කරන git -p diff
අතර git -p status
(මෙහි -p
අර්ථය වන්නේ සියලු ප්රතිදානයන් $ PAGER වෙතට නල කිරීමයි, පෙරනිමියෙන් එය less
) තරමක් පැරණි git අනුවාද සඳහා පවා (උදාහරණයක් ලෙස) , Git 1.7.1). නමුත් ඔබ color.ui always
කෙලින්ම නියම කරන විට git status | less -r
හෝ වර්ණ ප්රතිදානය ලබා ගැනීම සඳහා ඔබට තවමත් අවශ්ය වේ (එමඟින් ප්රතිදානය පයිප්පයක් වුවද (නිමැවුම පයිප්පයක් නොවුවද) git diff | less -r
. ඔබ ප්රතිදාන යළි හරවා යැවීම පැහැදිලිව සඳහන් කළ විට, පේජරයෙන් ඉවත් වූ පසු ප්රතිදානය ඔබට නොපෙනේ.
git status | less
හා git -p status
වූ විට, මා වෙනුවෙන් හරියටම එම හැසිරෙන බව පෙනේ color.ui always
නමුත් හිටපු දෙකම අධෛර්යයට පත් වින්යාස විකල්පය අවශ්ය සහ දිගු වන බැවින්, මම අග ^^ සමග හුදෙක් යන්නම් - සකසා
-r
( --raw-control-chars
) විකල්පය අඩු කිරීමට හෝ -R
(ANSI ගැලවීමේ අනුපිළිවෙල පමණක් ) භාවිතා කරන්න .
මේ සඳහා මට අන්වර්ථයක් ඇත ~/.bashrc
alias rless='less -r'
alias less='less -r'
. එසේ නොකිරීමට කිසියම් හේතුවක් තිබේද?
-r
අවශ්ය නොවන විට භාවිතා කිරීම දෘශ්යකරණ ගැටලුවට හේතු විය හැකි අවස්ථා ඇති බව මට නොපැහැදිලි මතකයි .
ack
සමඟ නල less -r
මාර්ගයේ ගමන් කරත්තයක් ආපසු යන විට
\less
දෘශ්යකරණය අවුල් වුවහොත් ඔබට භාවිතා කළ හැකිය .
less
කිසිම දෙයකට අන්වර්ථයක් අවශ්ය නැත, $LESS
ඔබ සැමවිටම සැපයීමට අවශ්ය ධජ less
export LESS='-MRq -z-2 -j2’
ද tree
මත වර්ණ බල විකල්පයක් ඇත:
tree -C | less -r
සහ එසේ ය ls
:
ls -lR --color | less -r
"භාවිතය less -r
" මත තවත් අනුවාදයක් එක් කිරීමට :
LESS
R අගය සමඟ පරිසර විචල්යය භාවිතා කරන්න (නැතහොත් එය දැනටමත් ඇති ඕනෑම දෙයකට r එකතු කරන්න)
උදා: මම එය මගේ භාවිතා කරන පරිදි .bashrc
:
export LESS=-Xr
යමෙකු json සමඟ පේජ් කිරීමට උනන්දුවක් දක්වන්නේ නම් jq
සහ less
එය භාවිතයෙන් එය සාක්ෂාත් කරගත හැකිය:
jq -C <jq args> file.json | less -R
උදා
jq -C . file.json | less -R
මුලාශ්රය: https://github.com/stedolan/jq/issues/764#issuecomment-95355331
මෙය පැරණි බවත් බොහෝ දෙනෙක් දැනටමත් නිවැරදි පිළිතුර ලබා දී ඇති බවත් මම දනිමි, නමුත් එය සැමවිටම භාවිතා කිරීම වඩා හොඳ less -R
බවත් less -r
, ඔබට -r
අක්ෂර ප්රදර්ශනය කිරීමේදී ගැටළු ඇතිවිය හැකි ANSI වර්ණ පමණක් අවශ්ය නම් නොවේ .
අත්පොතෙන්:
-r or --raw-control-chars
Causes "raw" control characters to be displayed. The default
is to display control characters using the caret notation; for
example, a control-A (octal 001) is displayed as "^A". Warn‐
ing: when the -r option is used, less cannot keep track of the
actual appearance of the screen (since this depends on how the
screen responds to each type of control character). Thus, var‐
ious display problems may result, such as long lines being
split in the wrong place.
-R or --RAW-CONTROL-CHARS
Like -r, but only ANSI "color" escape sequences are output in
"raw" form. Unlike -r, the screen appearance is maintained
correctly in most cases. ANSI "color" escape sequences are
sequences of the form:
ESC [ ... m