emacs: изменить регистр прямоугольника - PullRequest
10 голосов
/ 27 мая 2011

Какой был бы самый простой способ изменить регистр прямоугольника?

Ни один из ярлыков, упомянутых в руководстве , не говорит об этом.Должен ли я добавить пользовательскую привязку, чтобы сделать это?И пока мы занимаемся этим, как мне искать только внутри прямоугольника?

Ответы [ 2 ]

11 голосов
/ 27 мая 2011

Вот реализация upcase-rectangle, которая меняет регистр на все прописные. Просто замените upcase на downcase или capitalize или любое другое преобразование, которое вы хотите:

(defun upcase-rectangle (b e)
  "change chars in rectangle to uppercase"
  (interactive "r")
  (apply-on-rectangle 'upcase-rectangle-line b e))

(defun upcase-rectangle-line (startcol endcol)
  (when (= (move-to-column startcol) startcol)
    (upcase-region (point)
                   (progn (move-to-column endcol 'coerce)
                          (point)))))
6 голосов
/ 27 мая 2011

С помощью поддержки выбора прямоугольника cua-mode это просто:

(setq cua-enable-cua-keys nil)  ; enable only CUA's rectangle selections
(cua-mode t)

Затем можно выбрать прямоугольники, нажав C-RET и переместив курсор. Чтобы выделить этот регион, просто используйте обычную команду upcase-region, привязанную к M-U по умолчанию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...