microsoft / monaco-editor
Duplication

Places in code with 6 or more lines that are exactly the same.

Intro
  • For duplication, we look at places in code where there are 6 or more lines of code that are exactly the same.
  • Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
  • You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
Duplication Overall
  • 19% duplication:
    • 39,228 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 7,769 duplicated lines
  • 3,375 duplicates
system19% (7,769 lines)
Duplication per Extension
ts21% (6,360 lines)
html19% (908 lines)
js11% (489 lines)
css1% (12 lines)
Duplication per Component (primary)
src/basic-languages22% (5,818 lines)
website18% (901 lines)
website/playground22% (489 lines)
src/css28% (148 lines)
src/html29% (146 lines)
src/json20% (134 lines)
src/typescript4% (76 lines)
src/common4% (31 lines)
build1% (19 lines)
webpack-plugin/src2% (7 lines)
build/fillers0% (0 lines)
build/npm0% (0 lines)
ROOT0% (0 lines)
src/fillers0% (0 lines)
webpack-plugin/smoketest0% (0 lines)
website/index0% (0 lines)
website/monarch0% (0 lines)

Duplication Between Components (50+ lines)

G src/basic-languages src/basic-languages website website src/basic-languages--website 987 src/json src/json src/basic-languages--src/json 120 src/css src/css src/html src/html src/css--src/html 256 src/css--src/json 229 src/html--src/json 188

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 20 longest duplicates.
See data for all 3,375 duplicates...
Size#FoldersFilesLinesCode
93 x 2 src/basic-languages/solidity
src/basic-languages/sophia
solidity.ts
sophia.ts
1262:1388 (6%)
94:220 (53%)
view
70 x 2 src/basic-languages/python
website
python.ts
monarch.html
91:162 (30%)
2983:3054 (1%)
view
60 x 2 src/basic-languages/coffee
src/basic-languages/mips
coffee.ts
mips.ts
159:245 (30%)
125:211 (36%)
view
47 x 2 src/basic-languages/pgsql
src/basic-languages/sql
pgsql.ts
sql.ts
784:837 (5%)
771:824 (5%)
view
47 x 2 src/basic-languages/apex
src/basic-languages/java
apex.ts
java.ts
205:255 (15%)
107:157 (23%)
view
45 x 2 src/basic-languages/cameligo
src/basic-languages/pascaligo
cameligo.ts
pascaligo.ts
120:193 (29%)
110:183 (31%)
view
44 x 2 src/basic-languages/pgsql
src/basic-languages/redshift
pgsql.ts
redshift.ts
803:854 (5%)
764:815 (5%)
view
42 x 2 src/basic-languages/cpp
src/basic-languages/solidity
cpp.ts
solidity.ts
231:275 (11%)
1253:1297 (3%)
view
42 x 2 src/basic-languages/cpp
src/basic-languages/java
cpp.ts
java.ts
231:275 (11%)
105:149 (20%)
view
42 x 2 src/basic-languages/java
src/basic-languages/solidity
java.ts
solidity.ts
105:149 (20%)
1253:1297 (3%)
view
41 x 2 src/basic-languages/apex
src/basic-languages/cpp
apex.ts
cpp.ts
205:247 (13%)
233:275 (11%)
view
41 x 2 src/basic-languages/apex
src/basic-languages/solidity
apex.ts
solidity.ts
205:247 (13%)
1255:1297 (3%)
view
39 x 2 src/basic-languages/java
src/basic-languages/kotlin
java.ts
kotlin.ts
162:222 (19%)
184:244 (17%)
view
39 x 2 src/basic-languages/pascal
src/basic-languages/pascaligo
pascal.ts
pascaligo.ts
189:251 (17%)
101:164 (27%)
view
36 x 2 src/basic-languages/csharp
website
csharp.ts
monarch.html
308:348 (12%)
4278:4318 (<1%)
view
36 x 2 src/basic-languages/pgsql
src/basic-languages/redshift
pgsql.ts
redshift.ts
760:798 (4%)
721:759 (4%)
view
34 x 2 src/basic-languages/pgsql
src/basic-languages/sql
pgsql.ts
sql.ts
8:44 (4%)
8:44 (4%)
view
34 x 2 src/basic-languages/redshift
src/basic-languages/sql
redshift.ts
sql.ts
8:43 (4%)
8:44 (4%)
view
34 x 2 src/basic-languages/mysql
src/basic-languages/sql
mysql.ts
sql.ts
8:44 (3%)
8:44 (4%)
view
34 x 2 src/basic-languages/java
src/basic-languages/sophia
java.ts
sophia.ts
114:149 (16%)
94:129 (19%)
view
Duplicated Units
The list of top 4 duplicated units.
See data for all 4 unit duplicates...
Size#FoldersFilesLinesCode
8 x 4 src/css
src/html
src/json
src/typescript
monaco.contribution.ts
monaco.contribution.ts
monaco.contribution.ts
monaco.contribution.ts
224:232 
234:242 
208:216 
698:706 
view
8 x 3 src/css
src/html
src/json
workerManager.ts
workerManager.ts
workerManager.ts
44:52 
44:52 
44:52 
view
7 x 3 src/css
src/html
src/json
workerManager.ts
workerManager.ts
workerManager.ts
21:28 
21:28 
21:28 
view
6 x 4 src/css
src/html
src/json
src/typescript
workerManager.ts
workerManager.ts
workerManager.ts
workerManager.ts
30:36 
30:36 
30:36 
32:38 
view