Как отобразить разницу между двумя буферами с разницей «на уровне персонажа»


20

Когда два буфера сравниваются на предмет различий, M-x ediff-buffersне указываются конкретные символы, которые изменились в слове (то есть различия «на уровне символов»). Большинство современных инструментов сравнения покажут различия в слове.

В Emacs по умолчанию отсутствует эта важная (или, очевидно, полезная?) Функция. Как я могу заставить Emacs отображать различия по символам?

Обновление Вот M-x ediff-buffers diff1 diff2, используя, emacs -Qчтобы убедиться, что моя тема не мешает: введите описание изображения здесь

Вот тот же текст, вставленный в Meld: введите описание изображения здесь


Похоже, что эта проблема связана с темой, которую вы используете. В ванильном Emacs (24.4) выделены различия между отдельными строками. Вы можете проверить это, запустив Emacs с помощью emacs -Qи вызова ediff-buffersна diff1и , diff2как обычно.
itjeyd

Я пробовал работать с emacs -Q, добавлено выше. Кроме того, я изменил свой вопрос, чтобы он касался различий на уровне символов вместо различий между строками.
modulitos

Ответы:



6

Эта функция называется «уточнение» в Ediff. Вы можете нажать, *чтобы уточнить текущий блок или @включить автоматическое уточнение всякий раз, когда вы переходите на другой блок.


1
Я изменил мой вопрос , для решения символьного уровня посмотреть различие вместо того , внутри линии сравнения. Можно ли заставить Emacs показывать различия в слове?
modulitos
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.