diff options
-rw-r--r-- | test/Format/basic.cpp | 2 | ||||
-rw-r--r-- | test/Format/ranges.cpp | 2 | ||||
-rw-r--r-- | tools/clang-format/clang-format.el | 46 |
3 files changed, 15 insertions, 35 deletions
diff --git a/test/Format/basic.cpp b/test/Format/basic.cpp index 375bbd2ec7..a12866b9c1 100644 --- a/test/Format/basic.cpp +++ b/test/Format/basic.cpp @@ -1,5 +1,5 @@ // RUN: grep -Ev "// *[A-Z-]+:" %s > %t.cpp -// RUN: clang-format -i %t.cpp +// RUN: clang-format -style=LLVM -i %t.cpp // RUN: FileCheck -strict-whitespace -input-file=%t.cpp %s // CHECK: {{^int\ \*i;}} diff --git a/test/Format/ranges.cpp b/test/Format/ranges.cpp index 0244fc195c..c7fdd4b97a 100644 --- a/test/Format/ranges.cpp +++ b/test/Format/ranges.cpp @@ -1,5 +1,5 @@ // RUN: grep -Ev "// *[A-Z-]+:" %s > %t.cpp -// RUN: clang-format -offset=2 -length=0 -offset=28 -length=0 -i %t.cpp +// RUN: clang-format -style=LLVM -offset=2 -length=0 -offset=28 -length=0 -i %t.cpp // RUN: FileCheck -strict-whitespace -input-file=%t.cpp %s // CHECK: {{^int\ \*i;$}} int*i; diff --git a/tools/clang-format/clang-format.el b/tools/clang-format/clang-format.el index c63c62ee55..1277885996 100644 --- a/tools/clang-format/clang-format.el +++ b/tools/clang-format/clang-format.el @@ -10,38 +10,18 @@ ;; 'style' and 'binary' below. (defun clang-format-region () (interactive) - (let ((orig-file buffer-file-name) + (let ((orig-window-start (window-start)) (orig-point (point)) - (orig-mark (mark t)) - (orig-mark-active mark-active) (binary "clang-format") - (style "LLVM") - replacement-text replaced beg end) - (basic-save-buffer) - (save-restriction - (widen) - (if mark-active - (setq beg (1- (region-beginning)) - end (1- (region-end))) - (setq beg (1- (line-beginning-position)) - end (1- (line-end-position)))) - (with-temp-buffer - (call-process - binary orig-file '(t nil) t - "-offset" (number-to-string beg) - "-length" (number-to-string (- end beg)) - "-style" style) - (setq replacement-text - (buffer-substring-no-properties (point-min) (point-max)))) - (unless (string= replacement-text - (buffer-substring-no-properties (point-min) (point-max))) - (delete-region (point-min) (point-max)) - (insert replacement-text) - (setq replaced t))) - (ignore-errors - (when orig-mark - (push-mark orig-mark) - (when orig-mark-active - (activate-mark) - (setq deactivate-mark nil))) - (goto-char orig-point)))) + (style "LLVM")) + (if mark-active + (setq beg (1- (region-beginning)) + end (1- (region-end))) + (setq beg (1- (line-beginning-position)) + end (1- (line-end-position)))) + (call-process-region (point-min) (point-max) "clang-format" t t nil + "-offset" (number-to-string beg) + "-length" (number-to-string (- end beg)) + "-style" style) + (goto-char orig-point) + (set-window-start (selected-window) orig-window-start))) |