Emacs удаляет пробелы до края страницы

311
Spenser Truex

Мне часто приходится удалять много пробелов по краям страницы при работе в emacs.

Как убрать его быстрым нажатием клавиши? Я огляделся на вики-странице emacs lisp "удаление пробелов", но не нашел того, что мне нужно.

Вот пример:

Подчеркивание (_) - курсор, а место, куда я хочу перейти, - это вертикальная черта (|) в моем грубом представлении.

somecode...{ indending if(...) { | _ } } 

Если бы я просто несколько раз нажал на клавишу возврата, это заставило бы мой мизинец устать и занять некоторое время. Как я могу удалить его быстрым нажатием клавиши или, по крайней мере, внутренней функцией, которую я мог бы связать?

0
Не совсем по emacs, но один лайнер `sed -r -i 's / \ s + $ // g' file2clean.txt` сделает то, что вы хотите Alex 9 лет назад 0

2 ответа на вопрос

0
meuh

You can use the built-in help apropos by typing C-ha and the word whitespace. It will list for example

delete-trailing-whitespace M-x ... RET Delete trailing whitespace between START and END. fixup-whitespace M-x ... RET Fixup white space between objects around point. 

The first deletes trailing whitespace within the current region. The second does what you want, at point. Click button 2 on the function name to get more info.

Neither probably have a default binding for you, so to execute the second you type M-x and the first few chars fixup- and tab to complete. Add your own binding to a key for ease of use.

0
legoscia

Another thing you can do, limiting yourself to commands that have a key binding out of the box, is hitting M-SPC (for just-one-space), which deletes all the spaces except one, and then you can delete the last one with backspace.

Похожие вопросы