එහි ප්රතිදානය ඒකවර්ණ නොකිරීමට මට අඩුවෙන් ලබා ගත හැකිද?
උදා: සිට git diffලැබෙන ප්රතිදානය වර්ණවත් නමුත් git diff | lessඑසේ නොවේ.
lessපමණයි.
එහි ප්රතිදානය ඒකවර්ණ නොකිරීමට මට අඩුවෙන් ලබා ගත හැකිද?
උදා: සිට git diffලැබෙන ප්රතිදානය වර්ණවත් නමුත් git diff | lessඑසේ නොවේ.
lessපමණයි.
Answers:
භාවිත:
git diff --color=always | less -r
--color=alwaysgitප්රතිදානය පයිප්පයක් වුවද (ටීටී එකක් නොවේ) වර්ණ කේත ප්රතිදානය කිරීමට පැවසිය යුතුය. හා -rකියන්න තියෙනවා lessඑම වර්ණ කේත සහ අනෙකුත් පලා අනුක්රමය අර්ථ නිරූපණය කිරීමට. -RANSI වර්ණ කේත සඳහා පමණක් භාවිතා කරන්න .
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.uigit-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ඔබ සැමවිටම සැපයීමට අවශ්ය ධජ lessexport LESS='-MRq -z-2 -j2’
ද treeමත වර්ණ බල විකල්පයක් ඇත:
tree -C | less -r
සහ එසේ ය ls:
ls -lR --color | less -r
"භාවිතය less -r" මත තවත් අනුවාදයක් එක් කිරීමට :
LESSR අගය සමඟ පරිසර විචල්යය භාවිතා කරන්න (නැතහොත් එය දැනටමත් ඇති ඕනෑම දෙයකට 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