코드 줄 수 세기
cloc는 많은 프로그래밍 언어에서 빈 줄, 주석 줄, 소스 코드의 물리적 줄을 계산합니다.
최신 릴리스: v2.02(2024년 8월 2일)
cloc은 2006년 8월부터 http://cloc.sourceforge.net/에서 호스팅되다가 2015년 9월 GitHub로 이전되었습니다.
1단계: cloc를 다운로드하거나(여러 가지 방법, 아래 참조) cloc의 docker 이미지를 실행합니다. Windows 실행 파일에는 요구 사항이 없습니다. cloc의 소스 버전에는 Perl 인터프리터가 필요하고, cloc의 Docker 버전에는 Docker 설치가 필요합니다.
2단계: 터미널(Windows의 경우 cmd.exe
)을 엽니다.
3단계: cloc를 호출하여 소스 파일, 디렉터리, 아카이브 또는 git 커밋 수를 계산합니다. 실행 파일 이름은 개발 소스 버전( cloc
), 릴리스 버전 소스( cloc-2.02.pl
) 또는 Windows 실행 파일( cloc-2.02.exe
)을 사용하는지 여부에 따라 다릅니다.
이 페이지에서 cloc
이들 중 하나를 지칭하는 데 사용되는 일반적인 용어입니다.
보안 포함에는 실제 단계를 보여주는 YouTube 비디오가 있습니다.
파일
프롬프트> cloc hello.c 텍스트 파일 1개. 고유한 파일 1개. 0개의 파일이 무시되었습니다. https://github.com/AlDanial/cloc v 1.65 T=0.04 s (28.3 파일/초, 340.0 라인/초) ------------------------------------- ---------------- 언어 파일의 빈 주석 코드 ------------------------------------- ---------------- C 1 0 7 5 ------------------------------------- ----------------
디렉토리
프롬프트> cloc gcc-5.2.0/gcc/c 16개의 텍스트 파일. 15개의 고유한 파일. 3개의 파일이 무시되었습니다. https://github.com/AlDanial/cloc v 1.65 T=0.23 s (57.1 파일/초, 188914.0 라인/초) ------------------------------------- ---------------- 언어 파일의 빈 주석 코드 ------------------------------------- ---------------- C 10 4680 6621 30812 C/C++ 헤더 3 99 286 496 ------------------------------------- ---------------- 합계: 13 4779 6907 31308 ------------------------------------- ----------------
기록 보관소
GitHub에서 cloc의 소스 zip 파일을 가져온 다음 내용을 계산합니다.
프롬프트> wget https://github.com/AlDanial/cloc/archive/master.zip 프롬프트> cloc master.zip https://github.com/AlDanial/cloc v 1.65 T=0.07 s (26.8 파일/초, 141370.3 라인/초) ------------------------------------- ---------------- 언어 파일의 빈 주석 코드 ------------------------------------- ---------------- 펄 2 725 1103 8713 ------------------------------------- ---------------- 합계: 2 725 1103 8713 ------------------------------------- ----------------
특정 커밋을 사용하는 git 저장소
이 예제에서는 환상적인 Python 디버거인 PuDB의 코드를 사용합니다.
프롬프트> git clone https://github.com/inducer/pudb.git 프롬프트> CD pudb 프롬프트> cloc 6be804e07a5db 48개의 텍스트 파일. 41개의 고유한 파일. 8개 파일이 무시되었습니다. github.com/AlDanial/cloc v 1.99 T=0.04 s (1054.9 파일/초, 189646.8 라인/초) ------------------------------------- ---------------- 언어 파일의 빈 주석 코드 ------------------------------------- ---------------- 파이썬 28 1519 728 4659 reStructuredText 6 102 20 203 YAML 2 9 2 75 본 쉘 3 6 0 17 텍스트 1 0 0 11 1 4 6 10을 만들다 ------------------------------------- ---------------- 합계: 41 1640 756 4975 ------------------------------------- ----------------
특정 디렉토리의 각 하위 디렉토리
세 가지 다른 git 관리 프로젝트인 Project0, Project1 및 Project2가 있는 디렉터리가 있다고 가정해 보겠습니다. 쉘의 루핑 기능을 사용하여 각각의 코드 수를 계산할 수 있습니다. 이 예에서는 bash를 사용합니다(cmd.exe 예를 보려면 아래로 스크롤).
프롬프트> ./*/의 d에 대해; do (cd "$d" && echo "$d" && cloc --vcs git); 완료 ./프로젝트0/ 7개의 텍스트 파일. 7개의 고유한 파일. 파일 1개가 무시되었습니다. github.com/AlDanial/cloc v 1.71 T=0.02 s (390.2 파일/초, 25687.6 라인/초) ------------------------------------- ---------------- 언어 파일의 빈 주석 코드 ------------------------------------- ---------------- 디 4 61 32 251 마크다운 1 9 0 38 1 0 0 4를 만들다 ------------------------------------- ---------------- 합계: 6 70 32 293 ------------------------------------- ---------------- ./프로젝트1/ 7개의 텍스트 파일. 7개의 고유한 파일. 0개의 파일이 무시되었습니다. github.com/AlDanial/cloc v 1.71 T=0.02 s (293.0 파일/초, 52107.1 라인/초) ------------------------------------- ---------------- 언어 파일의 빈 주석 코드 ------------------------------------- ---------------- 가다 7 165 282 798 ------------------------------------- ---------------- 합계: 7 165 282 798 ------------------------------------- ---------------- ./프로젝트2/ 49개의 텍스트 파일. 47개의 고유한 파일. 13개의 파일이 무시되었습니다. github.com/AlDanial/cloc v 1.71 T=0.10 s (399.5 파일/초, 70409.4 라인/초) ------------------------------------- ---------------- 언어 파일의 빈 주석 코드 ------------------------------------- ---------------- 파이썬 33 1226 1026 3017 C 4 327 337 888 마크다운 1 11 0 28 YAML 1 0 2 12 ------------------------------------- ---------------- 합계: 39 1564 1365 3945 ------------------------------------- ----------------
특정 디렉터리의 각 하위 디렉터리(Windows/cmd.exe)
for /D %I in (.*) do cd %I && cloc --vcs git && cd ..
cloc는 많은 프로그래밍 언어에서 빈 줄, 주석 줄, 소스 코드의 물리적 줄을 계산합니다. 두 가지 버전의 코드 베이스가 주어지면 cloc은 공백, 주석 및 소스 행의 차이를 계산할 수 있습니다. 이는 Perl v5.6 이상의 표준 배포판(일부 외부 모듈의 코드는 cloc에 내장되어 있음) 외부에 종속되지 않고 완전히 Perl로 작성되었으므로 이식성이 뛰어납니다. cloc는 Linux, FreeBSD, NetBSD, OpenBSD, macOS, AIX, HP-UX, Solaris, IRIX, z/OS 및 Windows의 다양한 버전에서 실행되는 것으로 알려져 있습니다. (Windows에서 cloc의 Perl 소스 버전을 실행하려면 ActiveState Perl 5.6.1 이상, Strawberry Perl, Linux용 Windows 하위 시스템, Cygwin, Perl 플러그인이 설치된 MobaXTerm 또는 다음에서 제공하는 mingw 환경 및 터미널이 필요합니다. Windows용 Git 또는 PAR::Packer로 생성된 cloc의 Windows 바이너리를 사용하여 Perl이나 Cygwin이 없는 Windows 컴퓨터에서 실행할 수 있습니다.
개별 텍스트 파일, 디렉터리 및 git 리포지토리의 코드를 계산하는 것 외에도 cloc는 .tar
(압축 버전 포함), .zip
, Python 휠 .whl
, Jupyter 노트북 .ipynb
, 소스 RPM과 같은 아카이브 파일의 코드도 계산할 수 있습니다 .rpm
또는 .src
( rpm2cpio
필요) 및 Debian .deb
파일( dpkg-deb
필요).
cloc에는 David Wheeler의 SLOCCount, Damian Conway 및 Abigail의 Perl 모듈 Regexp::Common, Sean M. Burke의 Perl 모듈 Win32::Autoglob 및 Tye McQueen의 Perl 모듈 Algorithm::Diff의 코드가 포함되어 있습니다. 언어 규모 요소는 Mayes Consulting, LLC 웹 사이트 http://softwareestimator.com/IndustryData2.htm에서 파생되었습니다.
새 릴리스는 명목상 6개월마다 나타납니다.
docker run --rm -v $PWD :/tmp aldanial/cloc
docker run --rm -v " / $( pwd -W ) " :/tmp aldanial/cloc
운영 체제에 따라 다음 설치 방법 중 하나가 적합할 수 있습니다(Windows의 마지막 두 항목을 제외한 모든 항목에는 Perl 인터프리터가 필요함).
npm install -g cloc # https://www.npmjs.com/package/cloc
sudo apt install cloc # Debian, Ubuntu
sudo yum install cloc # Red Hat, Fedora
sudo dnf install cloc # Fedora 22 or later
sudo pacman -S cloc # Arch
sudo emerge -av dev-util/cloc # Gentoo https://packages.gentoo.org/packages/dev-util/cloc
sudo apk add cloc # Alpine Linux
doas pkg_add cloc # OpenBSD
sudo pkg install cloc # FreeBSD
sudo port install cloc # macOS with MacPorts
brew install cloc # macOS with Homebrew
winget install AlDanial.Cloc # Windows with winget
choco install cloc # Windows with Chocolatey
scoop install cloc # Windows with Scoop
참고 : 저는 이러한 패키지를 제어하지 않습니다. 위 패키지 중 하나를 사용하여 cloc에서 버그가 발생하면 문제 보고서를 제출하기 전에 여기 GitHub(아래 링크 참조)의 최신 안정 릴리스에서 가져온 cloc를 사용해 보세요.
https://github.com/AlDanial/cloc/releases/latest
https://github.com/AlDanial/cloc/raw/master/cloc
cloc는 다른 소스에서 복사된 부분을 제외하고 GNU General Public License v 2에 따라 라이센스가 부여됩니다. Regexp::Common, Win32::Autoglob 및 Algorithm::Diff Perl 모듈에서 복사된 코드에는 예술 라이센스가 적용됩니다.
cloc에는 사용하기 쉽고, 철저하며, 확장 가능하고 이식 가능한 많은 기능이 있습니다.
cloc이 귀하의 요구 사항에 적합하지 않은 경우 고려해야 할 다른 무료 카운터가 있습니다.
기타 참고자료:
cloc에는 표준 배포판에 있는 것 이외의 Perl 모듈이 필요하지 않지만 cloc는 몇 가지 외부 모듈에 의존합니다. 세 가지 외부 모듈(Regexp::Common, Win32::Autoglob 및 Algorithm::Diff)의 코드가 cloc에 포함되어 있습니다. 네 번째 모듈인 Digest::MD5는 사용 가능한 경우에만 사용됩니다. cloc이 로컬에 설치된 Regexp::Common 또는 Algorithm::Diff를 발견하면 해당 설치를 사용합니다. 그렇지 않은 경우 cloc는 Regexp::Common 및/또는 Algorithm:Diff의 일부를 설치합니다. cloc 실행 시작 시 생성된 다음 실행이 완료되면 제거되는 임시 디렉터리에 필요합니다. Regexp::Common v2.120 및 Algorithm::Diff v1.1902의 필수 코드는 cloc 소스 코드 내에 포함되어 있습니다(서브루틴 Install_Regexp_Common()
및 Install_Algorithm_Diff()
참조). Win32::Autoglob에서는 세 줄만 필요하며 이는 cloc에 직접 포함됩니다.
또한, cloc는 Digest::MD5가 로컬에 설치된 경우 Digest::MD5를 사용하여 동일한 크기의 입력 파일 간의 고유성을 검증합니다.
병렬 처리 옵션 --processes= N 은 멀티 코어 시스템에서 더 빠른 실행을 가능하게 하기 위해 cloc 버전 1.76에 도입되었습니다. 그러나 이를 사용하려면 Parallel::ForkManager 모듈이 설치되어 있어야 합니다. 이 모듈은 Windows에서는 안정적으로 작동하지 않으므로 병렬 처리는 Unix 계열 운영 체제에서만 작동합니다.
Windows 바이너리는 Regexp::Common과 Digest::MD5가 모두 로컬로 설치된 컴퓨터에 구축됩니다.
cloc의 Windows 실행 파일을 생성하는 가장 강력한 옵션은 ActiveState의 Perl Development Kit를 사용하는 것입니다. 여기에는 Perl 소스 코드의 독립 실행형 Windows, Mac 및 Linux 바이너리를 구축할 수 있는 유틸리티 perlapp
포함되어 있습니다.
perl2exe도 트릭을 수행합니다. perl2exe
있는 경우 cloc Windows를 실행 가능하게 만드는 데 필요한 사소한 코드 수정을 위해 cloc 소스 코드의 84-87행을 수정하십시오.
그렇지 않은 경우 PAR::Packer
에서 pp
사용하여 Windows 실행 파일을 빌드하려면 먼저 해당 지침에 따라 Windows 기반 Perl 배포판(예: Strawberry Perl 또는 ActivePerl)을 설치하세요. 다음으로, DOS 창이라고도 불리는 명령 프롬프트를 열고 PAR::Packer 모듈을 설치하세요. 마지막으로 cloc 소스 코드와 함께 새로 설치된 pp
명령을 호출하여 .exe
파일을 만듭니다.
C:> cpan -i 다이제스트::MD5 C:> cpan -i Regexp::공통 C:> cpan -i 알고리즘::Diff C:> cpan -i PAR::패커 C:> cpan -i Win32::LongPath C:> pp -M Win32::LongPath -M 인코딩::유니코드 -M 다이제스트::MD5 -c -x -o cloc-2.02.exe cloc-2.02.pl
위 지침의 변형은 Strawberry Perl의 휴대용 버전을 설치한 경우 먼저 portableshell.bat
실행하여 환경을 올바르게 설정해야 한다는 것입니다.
릴리스 섹션의 Windows 실행 파일 cloc-2.02.exe 는 Strawberry Perl 5.30.2 및 PAR::Packer를 사용하여 .exe
를 빌드하는 64비트 Windows 10 컴퓨터에서 빌드되었습니다.
이상적으로는 컴퓨터에 Perl 인터프리터가 설치되어 있고 cloc 소스 파일을 실행할 수 있기 때문에 Windows 실행 파일이 필요한 사람은 없습니다. 그러나 중앙에서 관리되는 기업 Windows 시스템에서는 이것이 어렵거나 불가능할 수 있습니다.
cloc과 함께 배포되는 Windows 실행 파일은 바이러스 및 악성 코드가 없는 .exe
대한 최선의 노력으로 제공됩니다. 실행 파일에 대해 자체 바이러스 스캐너를 실행하고 https://www.virustotal.com/과 같은 사이트도 확인하는 것이 좋습니다. 최신 버전의 항목은 다음과 같습니다.
cloc-2.02-winget.exe: (Windows의 심볼릭 링크에서 실행할 수 있도록 PR 850 포함) https://www.virustotal.com/gui/file/be033061e091fea48a5bc9e8964cee0416ddd5b34bd5226a1c9aa4b30bdba66a?nocache=1
cloc-2.02.exe: https://www.virustotal.com/gui/file/369ed76125f7399cd582d169adf39a2e08ae5066031fea0cc8b2836ea50e7ce2?nocache=1
cloc-2.00.exe: https://www.virustotal.com/gui/file/7a234ef0cb495de1b5776acf88c5554e2bab1fb02725a5fb85756a6db3121c1f
cloc-1.98.exe: https://www.virustotal.com/gui/file/88615d193ec8c06f7ceec3cc1d661088af997798d87ddff331d9e9f9128a6782?nocache=1
cloc-1.96.1.exe: https://www.virustotal.com/gui/file/00b1c9dbbfb920dabd374418e1b86d2c24b8cd2b8705aeb956dee910d0d75d45?nocache=1
cloc-1.96.exe: https://www.virustotal.com/gui/file/54bf5f46fbaba7949c4eb2d4837b03c774c0ba587448a5bad9b8efc0222b1583?nocache=1
cloc-1.94.exe: https://www.virustotal.com/gui/file/b48a6002fb75fa66ec5d0c05a5c4d51f2ad22b5b025b7eb4e3945d18419c0952?nocache=1
cloc-1.92.exe: https://www.virustotal.com/gui/file/2668fcf8609c431e8934fe9e1866bc620c58d198c4eb262f1d3ef31ef4a690f7
cloc-1.90.exe: https://www.virustotal.com/gui/file/d655caae55486f9bac39f7e3c7b7553bcfcfe2b88914c79bfc328055f22b8a37/Detection
cloc-1.88.exe: https://www.virustotal.com/gui/file/97d5d2631d1cccdbfd99267ab8a4cf5968816bbe52c0f9324e72e768857f642d/Detection
cloc-1.86.exe: https://www.virustotal.com/gui/file/1b2e189df1834411b34534db446330d1c379b4bc008af3042ee9ade818c6a1c8/Detection
cloc-1.84.exe: https://www.virustotal.com/gui/file/e73d490c1e4ae2f50ee174005614029b4fa2610dcb76988714839d7be68479af/Detection
cloc-1.82.exe: https://www.virustotal.com/#/file/2e5fb443fdefd776d7b6b136a25e5ee2048991e735042897dbd0bf92efb16563/Detection
cloc-1.80.exe: https://www.virustotal.com/#/file/9e547b01c946aa818ffad43b9ebaf05d3da08ed6ca876ef2b6847be3bf1cf8be/Detection
cloc-1.78.exe: https://www.virustotal.com/#/file/256ade3df82fa92febf2553853ed1106d96c604794606e86efd00d55664dd44f/Detection
cloc-1.76.exe: https://www.virustotal.com/#/url/c1b9b9fe909f91429f95d41e9a9928ab7c58b21351b3acd4249def2a61acd39d/Detection
cloc-1.74_x86.exe: https://www.virustotal.com/#/file/b73dece71f6d3199d90d55db53a588e1393c8dbf84231a7e1be2ce3c5a0ec75b/Detection
cloc 1.72 exe: https://www.virustotal.com/en/url/8fd2af5cd972f648d7a2d7917bc202492012484c3a6f0b48c8fd60a8d395c98c/analytic/
cloc 1.70 exe: https://www.virustotal.com/en/url/63edef209099a93aa0be1a220dc7c4c7ed045064d801e6d5daa84ee624fc0b4a/analytic/
cloc 1.68 exe: https://www.virustotal.com/en/file/c484fc58615fc3b0d5569b9063ec1532980281c3155e4a19099b11ef1c24443b/analytic/
cloc 1.66 exe: https://www.virustotal.com/en/file/54d6662e59b04be793dd10fa5e5edf7747cf0c0cc32f71eb67a3cf8e7a171d81/analytic/1453601367/
위에서 언급한 대로 perl2exe로 생성된 cloc 버전 1.60 이하의 Windows 실행 파일은 약 1.6MB인 반면, PAR::Packer
로 생성된 버전 1.62 및 1.54는 11MB입니다. 최신 버전의 PAR::Packer
로 구축된 버전 1.66은 약 5.5MB입니다. PAR::Packer
실행 파일이 perl2exe로 빌드된 실행 파일보다 훨씬 큰 이유는 무엇입니까? 내 이론은 perl2exe가 PAR::Packer
보다 더 똑똑한 트리 가지치기 논리를 사용한다는 것입니다. 그러나 이는 순수한 추측입니다.
cloc는 파일, 디렉터리 및/또는 아카이브 이름을 입력으로 사용하는 명령줄 프로그램입니다. 다음은 Perl v5.22.0 소스 배포판에 대해 cloc를 실행하는 예입니다.
프롬프트> cloc perl-5.22.0.tar.gz 5605 텍스트 파일. 5386개의 고유 파일. 2176개의 파일이 무시되었습니다. https://github.com/AlDanial/cloc v 1.65 T=25.49 s (134.7 파일/초, 51980.3 라인/초) ------------------------------------- --------------------------------- 언어 파일의 빈 주석 코드 ------------------------------------- --------------------------------- 펄 2892 136396 184362 536445 씨 130 24676 33684 155648 C/C++ 헤더 148 9766 16569 147858 본 쉘 112 4044 6796 42668 파스칼 8458 1603 8592 XML 33 142 0 2410 YAML 49 20 15 2078 C++ 10313 277 2033 4 426 488 1986을 만드세요 프롤로그 12 438 2 1146 JSON 14 1 0 1037 야cc 1 85 76 998 Windows 메시지 파일 1 102 11 489 DOS 배치 14 92 41 389 Windows 리소스 파일 3 10 0 85 디 1 5 7 8 리스프 2 0 3 4 ------------------------------------- --------------------------------- 합계: 3434 176974 243934 903874 ------------------------------------- ---------------------------------
Windows 컴퓨터에서 cloc를 실행하려면 명령(DOS라고도 함) 창을 열고 명령줄에서 cloc.exe를 호출하십시오. 또는 https://github.com/Roemer/ClocViewer에서 찾을 수 있는 cloc 주변의 GUI 래퍼인 ClocViewer를 사용해 보세요.
cloc 결과의 그래픽 렌더링은 https://github.com/jmensch1/codeflower를 참조하세요.
프롬프트> cloc --help 사용법: cloc [옵션] <파일/디렉터리/git 해시(들)> | <세트 1> <세트 2> | <보고서 파일> 소스 코드의 물리적 라인 수를 계산하거나 차이를 계산합니다. 주어진 파일(압축된 tarball 또는 zip 파일과 같은 아카이브일 수 있음, 또는 git commit 해시 또는 분기 이름) 및/또는 재귀적으로 주어진 디렉토리. 입력 옵션 --extract-with=<cmd> 이 옵션은 cloc을 사용할 수 없는 경우에만 필요합니다. 내용을 추출하는 방법을 알아 내기 위해 입력 파일 자체. <cmd>를 사용하여 바이너리 아카이브 파일을 추출합니다(예: .tar.gz, .zip, .Z). 리터럴 '>FILE<'을 다음과 같이 사용하십시오. 실제 파일을 대신하는 역할 추출되었습니다. 예를 들어, 코드 줄 수를 계산하려면 입력 파일에서 gcc-4.2.tar.gz perl-5.8.8.tar.gz 유닉스 사용시 --extract-with='gzip -dc >파일< | 타르 xf -' 또는 GNU tar가 있는 경우 --extract-with='tar zxf >파일<' Windows에서는 다음과 같이 사용합니다. --extract-with=""c:Program FilesWinZipWinZip32.exe" -e -o >파일< ." (WinZip이 설치된 경우) --list-file=<file> 파일 및/또는 디렉터리 이름 목록을 가져옵니다. 하나의 파일/디렉토리가 있는 <file>에서 프로세스 한 줄에 이름. 정확히 일치하는 항목만 계산됩니다. 상대 경로 이름은 다음에서 시작하여 확인됩니다. cloc이 호출되는 디렉토리입니다. <파일> 설정 to - STDIN 파이프에서 파일 이름을 읽습니다. --exclude-list-file도 참조하세요. --diff-list-file=<file> 차이점을 확인할 파일 이름 쌍을 가져옵니다. 형식이 다음의 출력과 일치하는 <file> --차이 정렬. (해당 옵션을 사용하여 실행하면 샘플을 참조하세요.) 각 줄의 끝은 무시됩니다. 이렇게 하면 --diff가 활성화됩니다. 모드이며 파일 쌍 정렬 논리를 우회합니다. --vcs=<VCS> <VCS>에 대한 시스템 호출을 호출하여 목록을 얻습니다. 작업할 파일. <VCS>가 'git'이면 파일 목록을 얻으려면 'git ls-files'를 호출하고 하위 모듈 목록을 가져오는 'git submodule status' 그 내용은 무시됩니다. --git도 참조하세요. git commit 해시와 브랜치 이름을 허용합니다. <VCS>가 'svn'이면 'svn list -R'을 호출합니다. 주요 이점은 cloc이 건너뛴다는 것입니다. 버전 관리 도구에서 명시적으로 제외된 파일 문제가 있는 경우, 즉 .gitignore에 있거나 svn:속성을 무시합니다. 또는 <VCS>는 임의의 시스템 명령일 수 있습니다. 파일 목록을 생성합니다. 참고: cloc는 읽을 수 있는 디렉토리에 있어야 합니다. <VCS>에서 반환된 파일입니다. 시계는 그럴 것이다 원격 저장소에서 파일을 다운로드하지 마십시오. 'svn list -R'은 원격 저장소를 나타낼 수 있습니다. 파일 이름을 얻으려면 (따라서 필요할 수 있습니다. 원격 저장소에 대한 인증), 그러나 파일 자체는 로컬이어야 합니다. <VCS>를 'auto'로 설정하면 'git' 중에서 선택됩니다. 존재 여부에 따라 'svn'(또는 둘 다) 디렉토리 아래의 .git 또는 .svn 하위 디렉토리 cloc이 호출되는 곳. --unicode 바이너리 파일에 유니코드가 포함되어 있는지 확인하세요. 확장된 ASCII 텍스트. 이로 인해 성능이 눈에 띄게 떨어집니다. 처리 옵션 --autoconf .in 파일 수(GNU autoconf에 의해 처리됨) 인식된 언어. --no-autogen도 참조하세요. --by-file 발견된 모든 소스 파일에 대한 결과를 보고합니다. --by-file-by-lang 발견된 모든 소스 파일에 대한 결과 보고 언어별 보고 외에 --config <파일> 대신 <파일>에서 명령줄 스위치를 읽습니다. 기본 위치는 /home/al/.config/cloc/options.txt입니다. 파일에는 다음과 같은 하나의 스위치가 포함되어야 합니다. 인수(있는 경우)(한 줄당). 빈 줄과 줄 '#'으로 시작하는 부분은 건너뜁니다. 에 주어진 옵션 명령줄은 읽은 항목보다 우선순위를 갖습니다. 파일. --개수 및 차이 <set1> <set2> 먼저 소스 파일의 직접 코드 계산을 수행합니다. <set1>과 <set2>를 별도로 분리한 다음 diff를 수행합니다. 이들 중. 입력은 파일, 디렉토리, 또는 아카이브. --out 또는 --report-file이 제공되면, 세 개의 출력 파일이 각각 하나씩 생성됩니다. 두 카운트 중 하나와 차이점에 대한 것입니다. 또한보십시오 --diff, --diff-alignment, --diff-timeout, --대소문자 무시, --공백 무시. --diff <set1> <set2> 코드와 주석의 차이를 계산합니다. <set1> 및 <set2>의 소스 파일입니다. 입력 파일, 디렉토리, 아카이브 등이 혼합되어 있을 수 있습니다. 또는 git commit 해시를 사용하세요. --diff-alignment를 사용하여 어떤 파일 쌍이 어디에 있는지 보여주는 목록을 생성합니다. 비교. git 브랜치를 비교할 때 파일만 두 커밋에서 변경된 사항이 비교됩니다. --git, --count-and-diff, --diff-alignment도 참조하세요. --diff-목록-파일, --diff-timeout, --ignore-case, --공백 무시. --diff-timeout <N> <N>초 이상 걸리는 파일을 무시합니다. 처리합니다. 기본값은 10초입니다. <N> 설정 0으로 설정하면 시간이 무제한으로 허용됩니다. (많은 파일이 포함된 대용량 파일 반복되는 줄은 Algorithm::Diff::sdiff()를 유발할 수 있습니다. 몇 시간이 걸릴 수 있습니다.) --timeout도 참조하세요. --docstring-as-code cloc는 독스트링을 주석으로 간주하지만 이는 독스트링은 정규를 나타내기 때문에 항상 정확하지는 않습니다. 문자열이 오른쪽에 나타날 때 할당 또는 함수 인수로. 이 스위치 독스트링을 코드로 간주하도록 강제합니다. --follow-links [Unix에만 해당] 디렉토리에 대한 기호 링크를 따릅니다. (파일에 대한 기호 링크는 항상 따라갑니다). --stat도 참조하세요. --force-lang=<언어>[,<ext>] <ext> 확장자를 가진 모든 파일 처리 언어 <lang>에 대한 카운터를 사용합니다. 을 위한 예를 들어, 모든 .f 파일을 계산하려면 Fortran 90 카운터(파일이 기본 Fortran 77 대신 .f90으로 끝남 카운터, 사용 --force-lang="포트란 90,f" <ext>를 생략하면 모든 파일이 계산됩니다. <lang> 카운터를 사용합니다. 이 옵션은 다음과 같습니다. 여러 번 지정했습니다(그러나 이는 <ext>가 매번 제공될 때 유용합니다). --script-lang, --lang-no-ext도 참조하세요. --force-lang-def=<파일> <파일>에서 언어 처리 필터를 로드합니다. 내장된 필터 대신 이 필터를 사용하세요. 필터. 참고: 동일하게 매핑되는 언어 파일 확장자(예: MATLAB/Mathematica/Objective-C/MUMPS/머큐리; 파스칼/PHP; 리스프/오픈CL; 리스프/줄리아; 펄/프롤로그) 추가가 필요하므로 무시됩니다. 언어로 표현되지 않는 처리 정의 파일. --read-lang-def를 사용하여 정의 기본 제공을 교체하지 않고 새로운 언어 필터 필터(--write-lang-def 참조, --write-lang-def-incl-dup). --git 입력이 강제로 git 대상으로 해석되도록 합니다. (해시, 분기 이름 등을 커밋) 먼저 파일이나 디렉터리로 식별되지 않습니다. 이름. 이 옵션은 --vcs=git 논리를 재정의합니다. 이것이 주어지면; 즉, --git은 다음을 사용하여 git에서 직접 작업할 파일 목록 from이 아닌 해시 또는 지점 이름 'git ls-파일'. 이 옵션은 다음과 함께 사용할 수 있습니다. --diff git 사이의 라인 수 비교를 수행합니다. 커밋 또는 git 커밋과 파일 사이, 디렉토리 또는 아카이브. -v/--verbose를 사용하여 확인하세요. git 시스템 명령은 cloc 문제를 발생시킵니다. --git-diff-rel --git --diff와 동일하거나 입력이 있는 경우 --diff만 사용 git 대상으로 인식됩니다. 다음 파일만 두 커밋 중 변경된 사항이 비교됩니다. --git-diff-all Git diff 전략 #2: 다음의 모든 파일을 비교합니다. 두 커밋 사이의 저장소. --ignore-whitespace 파일을 비교할 때 가로 공백을 무시합니다. --diff를 사용합니다. --대소문자 무시도 참조하세요. --ignore-case 파일 내용 내 Case의 변경 사항을 무시합니다. 대문자와 소문자를 동일하게 고려하십시오. --diff로 파일을 비교할 때. 또한보십시오 --공백 무시. --ignore-case-ext 파일 이름 확장자의 대소문자를 무시합니다. 이것은 일부 언어를 계산하는 데 문제가 발생함 (구체적으로 .c 및 .C는 C와 연관되어 있으며 C++; 이 스위치는 .C 파일을 C로 계산합니다. *nix 운영 체제의 C++보다). 파일 이름 Windows에서는 대소문자를 구분하지 않습니다. --lang-no-ext=<lang> <lang>을 사용하여 확장자가 없는 파일 수 계산 계수기. 이 옵션은 내부 논리를 재정의합니다. 확장자가 없는 파일의 경우(그러한 파일이 알려진 스크립팅 언어와 비교하여 확인됩니다. #!의 첫 번째 줄을 검사하여). 또한보십시오 --force-lang, --script-lang. --max-file-size=<MB> 다음과 같은 경우 <MB>MB보다 큰 파일을 건너뜁니다. 디렉토리 순회. 기본적으로 <MB>=100입니다. cloc의 메모리 요구 사항은 대략 20배입니다. 가장 큰 파일보다 크기 때문에 다음과 같이 실행됩니다. 용량이 적은 컴퓨터에서 100MB보다 큰 파일 2GB 이상의 메모리는 문제를 일으킬 수 있습니다. 참고: 이 검사는 파일에는 적용되지 않습니다. 명시적으로 명령줄 인수로 전달됩니다. --no-autogen[=list] 코드 생성 시스템에서 생성된 파일을 무시합니다. GNU autoconf와 같은 것입니다. 이 파일 목록을 보려면 (그런 다음 종료) --no-autogen list로 실행 --autoconf도 참조하세요. --original-dir [다음과 조합해서만 효과적입니다. --strip-comments] 제거된 파일 쓰기 원본 파일과 동일한 디렉토리에. --read-binary-files 텍스트 파일 외에 바이너리 파일도 처리합니다. 이는 일반적으로 나쁜 생각이므로 포함된 텍스트 파일로 시도했습니다. 바이너리 데이터. --read-lang-def=<file> <file>에서 새 언어 처리 필터 로드 이미 cloc로 알려진 것과 병합합니다. <file>이 cloc이 이미 알고 있는 언어를 정의하는 경우 대략 cloc의 정의가 우선합니다. cloc을 재정의하려면 --force-lang-def를 사용하세요. 정의(--write-lang-def 참조, --write-lang-def-incl-dup). --script-lang=<lang>,<s> <s>를 #!으로 호출하는 모든 파일을 처리합니다. 언어 카운터가 있는 스크립팅 언어 <언어>. 예를 들어 다음으로 시작하는 파일은 #!/usr/local/bin/perl5.8.8 다음을 사용하여 Perl 카운터로 계산됩니다. --script-lang=펄,펄5.8.8 언어 이름은 대소문자를 구분하지 않지만 스크립트 언어 실행 파일의 이름 <s>, 맞는 케이스가 있어야 합니다. 이 옵션은 다음과 같습니다. 여러 번 지정했습니다. --force-lang도 참조하세요. --lang-no-ext. --sdir=<dir> 대신 <dir>을 스크래치 디렉터리로 사용합니다. File::Temp가 위치를 선택하도록 합니다. 파일 이 위치에 기록된 내용은 다음에서 제거되지 않습니다. 실행의 끝(File::Temp와 마찬가지로). --skip-uniqueness 파일 고유성 검사를 건너뜁니다. 이것은 줄 것이다 계산을 희생하여 성능 향상 동일한 내용이 여러 번 포함된 파일 (그러한 중복이 존재하는 경우). --stat 일부 파일 시스템(AFS, CD-ROM, FAT, HPFS, SMB) 일치하는 디렉터리 'nlink' 개수가 없습니다. 하위 디렉토리의 수. 따라서 cloc은 과소 계산되거나 완전히 건너뛸 수 있습니다. 그러한 파일 시스템의 내용. 이 스위치는 힘 파일::stat 디렉토리를 찾아 정확한 수. 파일 검색 속도가 감소합니다. --follow-links도 참조하세요. --stdin-name=<file> 언어를 결정하는 데 사용할 파일 이름을 지정합니다. 표준 입력용. (-를 입력 이름으로 사용합니다. STDIN을 통해 소스 코드를 받습니다.) --strip-comments=<ext> 처리된 각 파일에 대해 현재 디렉토리 공백이 있는 파일 버전 주석 처리된 줄이 제거되었습니다(인라인 주석 지속). 제거된 각 파일의 이름은 원본 파일 이름에 .<ext>가 추가됩니다. 그렇지 않은 경우에는 현재 디렉토리에 기록됩니다. --original-dir이 켜져 있습니다. --strip-str-comments 문자열에 포함된 주석 표시를 다음으로 교체합니다. '더블 엑스'. 이는 제한 사항을 해결하려고 시도합니다. Regexp::Common::Comment에서 주석 마커 문자열에 포함된 내용은 실제 주석으로 간주됩니다. 문자열이 아닌 마커로 인해 종종 '복잡한 정규 하위 표현식 재귀 제한' 경고 및 잘못된 계산. 두 가지가 있습니다 이 스위치 사용의 단점: 1/코드 수 성능 저하 및 2/코드 생성 --strip-comments에는 다른 문자열이 포함됩니다. 삽입된 댓글이 발견된 곳. --sum-reports 입력 인수는 이전에는 보고서 파일이었습니다. 일반에서 --report-file 옵션을 사용하여 생성됨 형식(예: JSON, YAML, XML 또는 SQL이 아님). 다음을 포함하는 누적 결과 집합을 만듭니다. 개별 보고서 파일의 데이터 합계입니다. --timeout <N> <N>초 이상 걸리는 파일을 무시합니다. 언어의 필터 단계에서 처리합니다. 기본 최대 시간(초) 필터 단계는 파일의 줄 수입니다. 1천으로 나눕니다. <N>을 0으로 설정하면 시간 무제한. --diff-timeout도 참조하세요. --processes=NUM [최신 버전이 설치된 시스템에서만 사용 가능 Parallel::ForkManager 모듈의 아니다 Windows에서 사용 가능합니다.] 최대 개수를 설정합니다. cloc이 사용하는 코어. 기본값은 0입니다. 다중 처리를 비활성화합니다. --unix 운영 체제 자동 감지 무시 로직을 실행하고 UNIX 모드에서 실행합니다. 또한보십시오 --windows, --show-os. --use-sloccount SLOCCount가 설치된 경우 컴파일된 항목을 사용합니다. 실행 파일 c_count, java_count, pascal_count, cloc 대신 php_count 및 xml_count 카운터. SLOCCount의 컴파일된 카운터는 다음과 같습니다. cloc보다 상당히 빠르며 다음을 제공할 수 있습니다. 프로젝트 계산 시 성능 개선 큰 파일로. 그러나 이러한 시계 특정 기능을 사용할 수 없습니다: --diff, --count-and-diff, --strip-comments, --unicode. --windows 운영 체제 자동 감지를 재정의합니다. Microsoft Windows 모드에서 논리를 실행하고 실행합니다. --unix, --show-os도 참조하세요. 필터 옵션 --include-content=<regex> 일치하는 텍스트가 포함된 파일만 계산합니다. 정규 표현식이 주어졌습니다. --exclude-content=<regex> 주어진 내용과 일치하는 텍스트가 포함된 파일을 제외합니다. 정규식. --exclude-dir=<D1>[,D2,] 쉼표로 구분된 특정 디렉터리를 제외합니다. D1, D2, D3 등은 스캔되지 않습니다. 을 위한 예 --exclude-dir=.cache, 테스트는 건너뜁니다. /.cache/가 있는 모든 파일 및 하위 디렉터리 또는 /test/를 상위 디렉터리로 사용합니다. .bzr, .cvs, .hg, .git, .svn이라는 디렉터리 및 .snapshot은 항상 제외됩니다. 이 옵션은 개별 디렉터리에서만 작동합니다. 이름이므로 파일 경로 구분 기호를 포함하는 것은 아닙니다. 허용된. --fullpath 및 --not-match-d=<regex> 사용 여러 하위 디렉터리와 일치하는 정규식을 제공합니다. --exclude-ext=<ext1>[,<ext2>[...]] 주어진 파일 이름을 가진 파일을 계산하지 않음 확장. --exclude-lang=<L1>[,L2[...]] 지정된 쉼표로 구분된 언어 제외 L1, L2, L3 등은 계산되지 않습니다. --exclude-list-file=<file> 이름이 다음과 같은 파일 및/또는 디렉터리를 무시합니다. <파일>에 나타납니다. <file>에는 하나의 파일이 있어야 합니다. 한 줄에 이름. 정확히 일치하는 항목만 무시됩니다. 상대 경로 이름은 다음에서 시작하여 확인됩니다. cloc이 호출되는 디렉토리입니다. --list-file도 참조하세요. --fullpath --match-f, --not-match-f의 동작을 수정합니다. 파일 경로를 포함하려면 --not-match-d 파일의 기본 이름뿐만 아니라 정규식에서. (이렇게 하면 각 파일이 해당 파일을 포함하도록 확장되지 않습니다. 절대 경로 대신에 cloc에 전달되는 경로입니다.) 참고: --match-d는 항상 전체를 확인합니다. path이므로 --fullpath의 영향을 받지 않습니다. --include-ext=<ext1>[,ext2[...]] 주어진 쉼표가 있는 언어만 계산합니다. 분리된 파일 확장자. --show-ext를 사용하여 인식된 확장자를 확인하세요. --include-lang=<L1>[,L2[...]] 주어진 쉼표로 구분된 언어만 계산합니다. L1, L2, L3 등. --show-lang을 사용하여 확인하세요. 인식되는 언어 목록. --match-d=<regex> Perl과 일치하는 디렉토리의 파일만 계산합니다. 정규식. 예를 들어 --match-d='/(src|include)/' 다음을 포함하는 디렉터리의 파일만 계산합니다. /src/ 또는 /include/. --not-match-d와 달리, --match-f, --not-match-f, --match-d 항상 정규화된 경로를 정규식. --not-match-d=<regex> 디렉토리에 있는 파일을 제외한 모든 파일 수 계산 Perl 정규식과 일치합니다. 후행만 예를 들어 다음과 같은 경우 디렉터리 이름이 비교됩니다. /usr/local/lib에서 계산하면 'lib'만 정규식과 비교. 상위 디렉토리를 비교하려면 --fullpath를 추가하세요. 정규식. 파일 경로 구분 기호를 포함하지 마십시오. 정규식의 시작 또는 끝. --match-f=<regex> 기본 이름이 Perl과 일치하는 파일만 계산합니다. 정규식. 예를 들어 --match-f='^[Ww]idget' 위젯 또는 위젯으로 시작하는 파일만 계산합니다. 상위 디렉터리를 포함하려면 --fullpath를 추가하세요. 기본 이름 대신 정규식에서. --not-match-f=<regex> 기본 이름이 있는 파일을 제외한 모든 파일 수 계산 Perl 정규식과 일치합니다. 포함하려면 --fullpath를 추가하세요. 그냥 정규식의 상위 디렉토리 대신 기본 이름. --skip-archive=<regex> 주어진 Perl 정규로 끝나는 파일을 무시합니다. 표현. 예를 들어 주어진다면 --skip-archive='(zip|tar(.(gz|Z|bz2|xz|7z))?)' 코드는 .zip으로 끝나는 파일을 건너뜁니다. .tar, .tar.gz, .tar.Z, .tar.bz2, .tar.xz 및 .tar.7z. --skip-win-hidden Windows에서는 숨겨진 파일을 무시합니다. 디버그 옵션 --categorized=<file> 파일 크기를 바이트 단위로 저장, 식별된 언어 분류된 파일의 이름을 <file>에 추가합니다. --counted=<file> 처리된 소스 파일의 이름을 <file>에 저장합니다. --diff-alignment = <file> 파일 및 파일 쌍 목록에 쓰기 어떤 파일이 추가, 제거되었는지 및/또는 -diff와 달리기 중 비교. 이 스위치 -diff 모드를 켜십시오. --explain = <lang> 주석을 제거하는 데 사용되는 필터를 인쇄하십시오 언어 <Lang> 및 출구. 어떤 경우에는 필터는 Perl Subroutines가 아닌 Perl Subroutine을 나타냅니다 정규 표현. 검사 추가 설명을 위해서는 소스 코드가 필요할 수 있습니다. -헬프이 사용 정보를 인쇄하고 종료하십시오. -found = <file> 발견 된 모든 파일의 이름을 <file>에 저장합니다. -ignored = <file> 무시 된 파일의 이름을 저장하고 그 이유 <file>로 무시되었습니다. -프린트 필터-스테이지 전후에 처리 된 소스 코드를 인쇄합니다 각 필터가 적용됩니다. -show-ext [= <ext>] 모든 알려진 (또는 그냥 주어진) 파일 확장 및 종료. -쇼-랭 [= <lang>] 모든 알려진 (또는 그냥 주어진) 언어 및 종료. -쇼 -OS 운영 체제 모드의 값을 인쇄합니다 그리고 나가세요. -Unix, -windows도 참조하십시오. -v [= <n>] Verbose Switch (선택적 숫자 값). -verbose [= <n>] 긴 형태의 -v. -Version이 프로그램의 버전을 인쇄하고 종료하십시오. -write-lang-def = <file>은 언어 처리 필터 <file>에 씁니다 그런 다음 종료합니다. 창조의 첫 단계로 유용합니다 맞춤 언어 정의. 참고 : 언어 동일한 파일 확장자에 대한지도는 제외됩니다. (또한 -force-lang-def, -read-lang-def 참조). -write-lang-def-incl-dup = <file> -write-lang-def와 동일하지만 복제 된 포함 확장. 이것은 문제가있는 언어를 생성합니다 CLOC가 사용을 거부하기 때문에 정의 파일 복제가 제거 될 때까지. 출력 옵션 -3 인쇄 3 세대 언어 출력. (이 옵션으로 인해 보고서 요약이 실패 할 수 있습니다 이 옵션으로 일부 보고서가 작성된 경우 다른 사람들은 그것 없이는 생산되었습니다.) -댓글과 빈 줄 카운트 대신 x를 보여주십시오. 이 값은 값을 기준으로 백분율입니다 분모의 X : x = 'c' -> # 코드 줄 x = 'cm' -> # 코드 줄 + 댓글 x = 'CB' -> # 코드 + 블랭크 라인 x = 'cmb' -> # 코드 줄 + 댓글 + blanks 예를 들어, 메소드 'C'와 코드를 사용하는 경우 라인보다 두 배나 많은 주석이 있습니다 코드의, 주석 열의 값은 200%입니다. 코드 열은 줄 수 있습니다. -CSV 결과를 쉼표로 분리 된 값으로 작성합니다. --csv-delimiter = <c> 문자 <c>를 쉼표의 구분 기자로 사용하십시오. 대신 분리 된 파일. 이 스위치는 -CSV가 켜져 있습니다. -file-encoding = <e> <e> 인코딩을 사용하여 출력 파일 쓰기 기본 ASCII (<e> = 'UTF-7'). 예 : 'UTF-16', 'euc-kr', 'ISO-8859-16'. 알려진 인코딩이 될 수 있습니다 인쇄 perl -mencode -e 'print join ( " n", encode-> encodings ( ": all")), " n"' -헤드 비율은 라인과 파일 처리 속도를 표시하지 않습니다. 출력 헤더. 이것은 출력 결정 론적입니다. -json은 결과를 javaScript 객체 표기법으로 작성합니다 (JSON) 서식 출력. -md 결과를 Markdown 형식 텍스트로 씁니다. -out = <file> -report-file = <file>의 동의어. --progress-rate = <n> 모든 <n> 파일이 끝난 후 진행 업데이트를 표시합니다 처리 된 (기본 <n> = 100). <n>을 0으로 설정하십시오 진행 출력을 억제합니다 (리디렉션 할 때 유용합니다 stdout에 출력). -Quiet은 제외한 모든 정보 메시지를 억제합니다 최종 보고서. -report-file = <file> stdout 대신 결과를 <file>에 씁니다. -sql = <file> sql을 작성하고 삽입하여 결과를 쓰십시오 다음과 같은 데이터베이스 프로그램에서 읽을 수 있습니다. sqlite. <file>이면 -출력이 stdout으로 전송됩니다. -SQL-Append Append SQL 삽입 문을 지정된 파일에 삽입하십시오 -sql로 테이블 생성을 생성하지 마십시오 진술. -sql 옵션으로 만 유효합니다. ---sql-project = <name> <name>을 프로젝트 식별자로 사용하십시오 현재 실행. -sql 옵션으로 만 유효합니다. -sql-style = <tyle> 주어진 스타일로 SQL 문을 작성하십시오 기본 sqlite 형식의 스타일은 포함됩니다 'Oracle'및 'named_columns'. -일반 텍스트 보고서의 경우 SUM-ONE, SOM : Output Line 표시 하나의 입력 파일 만 처리 되더라도. -XML 결과를 XML로 작성합니다. -xsl = <file> 참조 <file> 내면의 XSL 스타일 시트로 XML 출력. <file>이 1 (숫자)이면 기본 스타일 시트, cloc.xsl (또는 cloc-diff.xsl-diff가 제공되면). 이 스위치는 -xml을 켜야합니다. --yaml yaml에 결과를 쓰십시오.
프롬프트> Cloc-쇼어 랭 ABAP (ABAP) ActionScript (AS) ADA (ADA, ADB, 광고, PAD) ADSO/IDSM (ADSO) Agda (Agda, Lagda) 충분한 (충분한, 도피, 스타트 업) Ansprolog (LP) Ant (build.xml, build.xml) Antlr 문법 (G, G4) 에이펙스 클래스 (CLS) 에이펙스 트리거 (트리거) APL (APL, APLA, APLC, APLF, APLI, APLN, APLO, DYALOG, DYAPP, MIPAGE) 사과 스크립트 (사과) Arduino 스케치 (INO) 방주 (ETS) 아르투로 (Art) Asciidoc (Adoc, Asciidoc) ASP (ASA, ASHX, ASP, AXD) ASP.NET (ASAX, ASCX, ASMX, ASPX, MASTER, SITEEMAP, WEBINFO) SAGON (AJ) 어셈블리 (A51, ASM, NASM, S, S) Astro (Astro) ASYPTOTE (ASY) Autohotkey (AHK, AHKL) awk (auk, awk, gawk, mawk, nawk) 바젤 (빌드) 비즈 토크 오케스트레이션 (ODX) Biztalk 파이프 라인 (BTP) 블레이드 (블레이드, 블레이드) Bourne Again Shell (Bash) Bourne Shell (SH) 브라이트 스크립트 (BRS) 빌더 (xml.builder) C (C, Cats, EC, IDC, PGC) C 쉘 (CSH, TCSH) C# (CS) C# 디자이너 (Designer.cs) C ++ (C, C ++, C ++ M, CC, CCM, CPP, CPP, CPPM, CXX, CXXM, H ++, INL, IPP, IXX, PCC, TCC, TPP) C/C ++ 헤더 (H, H, HH, HPP, HXX) 카이로 (카이로) 케이크 빌드 스크립트 (케이크) 탄소 (탄소) CCS (CCS) 예배당 (chpl) Circom (Circom) 청소 (DCL, ICL) Clojure (Boot, Cl2, Clj, Cljs.hl, Cljscm, Cljx, HIC, Riemann.config) Clojurec (CLJC) clojurescript (cljs) cmake (cmake, cmake.in, cmakelists.txt) COBOL (CBL, CBL, CCP, COB, COB, COBOL, CPY) 코코아 5 (C5, Cocoa5, Cocoa5server, CPKG5) 커피 스크립트 (_coffee, CakeFile, CJSX, 커피, 아이스) 콜드 퓨전 (CFM, CFML) Coldfusion CFScript (CFC) 제약 문법 (CG3, RLX) 컨테이너 파일 (컨테이너 파일) COQ (V) 크리스탈 (CR) CSON (CSON) CSS (CSS) CSV (CSV) 오이 (기능) CUDA (CU, CUH) Cython (PXD, PXI, PYX) d (d) dafny (dfy) 달 (DA) 다트 (다트) 델파이 양식 (DFM) DENIZENSCRIPT (DSC) derw (derw) Dhall (Dhall) 다이어트 (DT) diff (diff, patch) 디타 (디타) dockerfile (dockerfile, dockerfile) 문 확장 언어 (DXL) DOS 배치 (Bat, Bat, BTM, BTM, CMD, CMD) 침포 (DRL) DTD (DTD) dtrace (d) ECPP (ECPP) EEX (EEX) EJS (EJS) elixir (ex, ex) Elm (Elm) 임베디드 크리스탈 (ECR) ERB (ERB, ERB) Erlang (App.Src, Emakefile, Erl, Hrl, Rebar.config, Rebar.config.lock, Rebar.lock, XRL, YRL) 기대 (exp) F# (FSI, FS, FS) F# 스크립트 (FSX) 회향 (FNL) 유한 주 언어 (FSL, JSSM) 물고기 껍질 (물고기) 플랫 버퍼 (FBS) 포커스 (focexec) Forth (4th, e4, f83, fb, forth, fpm, fr, frt, ft, fth, rx, fs, f, f, for) FORTRAN 77 (F, F77, F77, for, ftn, ftn, pfo, f, for) Fortran 90 (F90, F90) Fortran 95 (F95, F95) 프리 마커 템플릿 (FTL) Futhark (FUT) FXML (FXML) gdscript (GD) Gencat NLS (MSG) Glade (Glade, UI) 빛나는 (빛나는) Glimmer JavaScript (GJS) Glimmer Typescript (GTS) glsl (comp, fp, frag, frg, fsh, fshader, geo, geom, glsl, glslv, gshader, tesc, tese, vert, vrx, vsh, vshader) 가서 (go, ʕ◔ϖ◔ʔ) Godot Resource (TRES) Godot 장면 (TSCN) Godot Shaders (gdshader) Gradle (Gradle, gradle.kts) 성배 (GSP) GraphQL (GQL, GraphQL, GraphQL) Groovy (Gant, Groovy, Grt, Gtpl, Gvy, Jenkinsfile) Haml (Haml, Haml.deface) 핸들 바 (핸들 바, HBS) 항구 (HB) 헤어 (ha) 하스켈