В Less, как прыгать горизонтально между совпадениями поиска на одной строке?

Вопрос или проблема

При нажатии n Less пропускает все совпадения в текущей строке и переходит к следующей строке с совпадением (даже если строки обернуты). Как я могу заставить его перемещать курсор ко всем совпадениям в каждой строке?

Функциональность поиска в просмотрщике less работает только со строками. Нет возможности поиска внутри строки (как, например, в редакторе Vi).

Если длинные строки завернуты таким образом, что вы не можете увидеть совпадения в строке, потому что они исчезают ниже нижней части экрана, вы можете рассмотреть возможность предварительного сворачивания длинных строк перед отображением текста в less, используя, например, fold -s -w 80 file | less.

См. также Поиск вхождений текста в длинной строке в less

.

Ответ или решение

Вопрос: Как в программе Less осуществить горизонтальный переход между совпадениями поиска на одной строке?

Ответ:

Когда мы используем команду less для просмотра содержимого текстового файла, важной частью является функциональность поиска. Однако, как вы заметили, по умолчанию поведение less при нажатии клавиши n переходит к следующему совпадению, игнорируя другие совпадения в текущей строке. Это может создать трудности, особенно если строки длинные и заключают в себе несколько совпадений, которые не помещаются на экране.

Характеристика проблемы

  • Поиск по умолчанию в less в действительности работает на уровне строк, а не на уровне символов внутри строки.
  • Таким образом, когда вы ищете совпадения, less переходит к следующему совпадению, находящемуся на следующей строке, оставляя пропущенными все совпадения на текущей строке.

Возможные решения

  1. Преобразование длинных строк: Один из способов обойти эту проблему — предварительно отформатировать файл с длинными строками. Это можно сделать с помощью команды fold. Например, запустите следующую команду в терминале:

    fold -s -w 80 ваш_файл.txt | less

    Эта команда будет «заворачивать» строки так, чтобы они не превышали 80 символов, что позволит less корректно обрабатывать каждую новую строку с несколькими совпадениями.

  2. Использование другого инструмента или редактора: Если вам необходима возможность перемещения по всем совпадениям на одной строке, возможно, стоит рассмотреть использование другого инструмента, такого как vi или vim, которые поддерживают внутренняя навигация по совпадениям в строках. Это позволит вам легче находить нужные места в содержимом.

Заключение

Таким образом, используя fold, вы можете предварительно форматировать ваш файл, чтобы улучшить навигацию в less или рассмотреть возможность использования других текстовых редакторов для выполнения задач, связанных с внутренняя навигацией. Возможно, это не решит проблему идеально, но предложенные методы помогут вам более эффективно работать с текстом и находить нужную информацию в сложных документах.

Оцените материал
Добавить комментарий

Капча загружается...