Останні зміни в документації згадують інший спосіб видалення параметра за замовчуванням для less
("параметри за замовчуванням" FRSX
).
Для цього питання це було б (git 1.8+)
git config --global --replace-all core.pager 'less -+F -+X'
Наприклад, Дірк Бестер пропонує у коментарях :
export LESS="$LESS -FRXK"
так що я отримав кольоровий розріз із Ctrl-Cкинутим з less
.
У коментарі та своєму питанні Вілсон F зазначає, що:
менше підтримує горизонтальну прокрутку, тож при відсіканні рядків менше вимикає функцію quit-if-one-screen, щоб користувач міг ще прокручувати текст ліворуч, щоб побачити, що було відрізано.
Ці зміни вже були помітні в git 1.8.x, як показано в " Завжди використовуйте пейджер дляgit diff
" (див. Коментарі). Але документація щойно перероблена ( для git 1.8.5 або 1.9, Q4 2013 ).
Переглядач тексту для використання командами Git (наприклад, "менше").
Значення означає інтерпретувати оболонкою.
Порядок уподобань:
$GIT_PAGER
змінна середовища,
- потім
core.pager
конфігурація,
- тоді
$PAGER
,
- а потім вибраний за замовчуванням час компіляції (зазвичай 'менше').
Коли LESS
змінна середовища не встановлена, Git встановлює її FRSX
(якщо LESS
встановлена змінна середовище, Git взагалі не змінює її).
Якщо ви хочете вибірково замінити налаштування за замовчуванням Git для LESS
, ви можете встановити core.pager
наприклад, наприкладless -+S
.
Це передасть у оболонку Git, який переведе остаточну команду на LESS=FRSX less -+S
. Середовище вказує команді встановити S
параметр для відсікання довгих рядків, але командний рядок скидає його за замовчуванням для складання довгих рядків.
Див. Документ 97d01f2a з причини нової редакції документації:
config: переписати core.pager
документацію
У тексті згадується core.pager
і GIT_PAGER
без надання загальної картини переваги. Позичіть кращий опис з git var
(1) документації.
Використання механізму для дозволу файлів конфігурації на загальносистемних, глобальних і репозиторії не обмежується цією конкретною змінною. Видаліть його, щоб уточнити абзац.
Перепишіть частину, яка пояснює, як змінна середовища LESS
встановлюється за замовчуванням Git та як вибірково налаштовувати її.
Примітка: commit b327583 ( Matthieu Moymoy
, квітень 2014, для git 2.0.x / 2.1, Q3 2014) видалить S за замовчуванням:
пейджер: видаліть "S" з $ LESS за замовчуванням
За замовчуванням Git використовується для установки $LESS
в -FRSX
разі $LESS
ні встановлено користувачем.
Ці FRX
прапори на насправді мають сенс для Git ( F
і X
тому , що іноді вихідні Git труби на менш короткий, і R
тому , що Git труби кольоровий вихід). Прапор (подрібнити довгі лінії), з іншого боку, не має відношення до Git і є предметом переваг користувача. Git не повинен вирішувати, що користувач може змінити типовий режим .
S
LESS
Більш конкретно, S
прапор шкодить користувачам, які переглядають ненадійний код у пейджері, оскільки патч виглядає так:
-old code;
+new good code; [... lots of tabs ...] malicious code;
видається ідентичним:
-old code;
+new good code;
Користувачі, які віддають перевагу старій поведінці, можуть все-таки встановити змінну середовища $ LESS -FRSX
явно або встановити ' less -S
'.
Документація буде читати:
Навколишнє середовище не встановлює S
параметр, але командний рядок робить, вказуючи менше скорочувати довгі рядки.
Аналогічно, встановлення core.pager
для less -+F
вимикає F
параметр, визначений середовищем, з командного рядка, деактивуючи quit if one screen
поведінку " " less
.
Можна спеціально активувати деякі прапори для певних команд: наприклад, встановити так, pager.blame
щоб less -S
увімкнути обрізання рядків лише для git blame
.
core.pager 'less -+F -+X'
був би останній спосіб видалити ці параметри. Дивіться мою відповідь нижче .