在 Ubuntu 上格式化 C++ 代码的命令行工具

在 Ubuntu 上格式化 C++ 代码的命令行工具

是否有任何命令行工具可用于在 Ubuntu 上美化 C++ 文件?如果有,您能推荐一个吗?

答案1

你尝试过 GNU 吗缩进

答案2

阿斯泰尔“非常好 —— 并且以我的经验来看,它比 C++ 的“缩进”效果好得多。

如果您熟悉 Emacs,您还可以使用它从命令行自动缩进。一个简单的 Emacs 脚本如下所示:

#!/usr/bin/emacs --script

(require 'cc-mode)

(setq require-final-newline 'visit)
(setq c-default-style "gnu")

(defun indent-files (files)
  (dolist (file files)
    (find-file file)
    (indent-region (point-min) (point-max))
    (untabify (point-min) (point-max))
    (save-buffer)
    (kill-buffer)))

(indent-files command-line-args-left)

;; EOF ;;

答案3

clang 格式应该可以解决问题:

clang-format -style=Google -i path/to/file.cc

有多种风格,包括 LLVM、Google、Chromium、Mozilla 和 WebKit。有关详细信息,请参阅clang-format -help

答案4

http://www.faqs.org/docs/Linux-HOWTO/C-C++Beautifier-HOWTO.html应该涵盖你的问题的大部分主题:

C++ : BCPP site is at "http://dickey.his.com/bcpp/bcpp.html" or at
      "http://www.clark.net/pub/dickey" . BCPP ftp site is at 
      "ftp://dickey.his.com/bcpp/bcpp.tar.gz"

C++ : "http://www.consultix-inc.com/c++b.html"

C : "http://www.chips.navy.mil/oasys/c/" and mirror at Oasys

C++ : "http://www.semdesigns.com/Products/DMS/DMSToolkit.html"

C++, C, Java and Oracle Pro-C Beautifier:
     "http://www.geocities.com/~starkville/main.html"

C++, C beautifier "http://users.erols.com/astronaut/vim/ccb-1.07.tar.gz" 
     and site at "http://users.erols.com/astronaut/vim/#vimlinks_src"

C++, C, Java, Perl beautifier CBP "http://www.prismtk.de/docs/cbp"

GC! GreatCode! is a powerful C/C++ source code beautifier Windows 
     95/98/NT/2000 "http://perso.club-internet.fr/cbeaudet"

CbVan for C, C++ and Java at "http://www.geocities.com/~starkville/main.html"

Artistic Style beautifier for C, C++, Java at 
     "http://sourceforge.net/projects/astyle" "http://astyle.sourceforge.net".

相关内容