1
0
mirror of https://github.com/sharkdp/bat synced 2026-06-09 10:03:18 +00:00

Add COBOL syntax highlighting

This commit is contained in:
Alex Dukhan
2026-02-12 21:06:03 +00:00
parent 990b2fc06f
commit ab393a0281
4 changed files with 126 additions and 0 deletions
+3
View File
@@ -278,3 +278,6 @@
[submodule "assets/syntaxes/02_Extra/Gomod"]
path = assets/syntaxes/02_Extra/Gomod
url = https://github.com/mitranim/sublime-gomod
[submodule "assets/syntaxes/02_Extra/COBOL"]
path = assets/syntaxes/02_Extra/COBOL
url = https://github.com/adukhan99/sublime_cobol.git
+61
View File
@@ -0,0 +1,61 @@
IDENTIFICATION DIVISION.
PROGRAM-ID. PAYROLL-CALC.
DATA DIVISION.
WORKING-STORAGE SECTION.
 01 EMPLOYEE-DETAILS.
 05 EMPLOYEE-NAME PIC X(30).
 05 HOURS-WORKED PIC 99V9.
 05 HOURLY-RATE PIC 99V99.
 01 PAY-CALCULATIONS.
 05 GROSS-PAY PIC 9(5)V99.
 05 OVERTIME-HOURS PIC 99V9.
 05 OVERTIME-PAY PIC 9(5)V99.
 05 TAX-RATE PIC V99 VALUE 0.10.
 05 TAX-AMOUNT PIC 9(5)V99.
 05 NET-PAY PIC 9(5)V99.
PROCEDURE DIVISION.
MAIN-LOGIC.
 DISPLAY "--- COBOL Payroll Calculator ---".
 DISPLAY "Enter Employee Name: ".
 ACCEPT EMPLOYEE-NAME.
 DISPLAY "Enter Hours Worked (e.g., 40.5): ".
 ACCEPT HOURS-WORKED.
 DISPLAY "Enter Hourly Rate (e.g., 15.75): ".
 ACCEPT HOURLY-RATE.
 PERFORM CALCULATE-GROSS-PAY.
 PERFORM CALCULATE-TAX.
 PERFORM CALCULATE-NET-PAY.
 PERFORM DISPLAY-RESULTS.
 STOP RUN.
CALCULATE-GROSS-PAY.
 IF HOURS-WORKED > 40 THEN
 COMPUTE OVERTIME-HOURS = HOURS-WORKED - 40
 COMPUTE OVERTIME-PAY = OVERTIME-HOURS * HOURLY-RATE * 1.5
 COMPUTE GROSS-PAY = (40 * HOURLY-RATE) + OVERTIME-PAY
 ELSE
 COMPUTE GROSS-PAY = HOURS-WORKED * HOURLY-RATE
 END-IF.
CALCULATE-TAX.
 COMPUTE TAX-AMOUNT = GROSS-PAY * TAX-RATE.
CALCULATE-NET-PAY.
 COMPUTE NET-PAY = GROSS-PAY - TAX-AMOUNT.
DISPLAY-RESULTS.
 DISPLAY "----------------------------------".
 DISPLAY "Employee Name: " EMPLOYEE-NAME.
 DISPLAY "Hours Worked: " HOURS-WORKED.
 DISPLAY "Hourly Rate: " HOURLY-RATE.
 DISPLAY "Gross Pay: " GROSS-PAY.
 DISPLAY "Tax (10%): " TAX-AMOUNT.
 DISPLAY "Net Pay: " NET-PAY.
 DISPLAY "----------------------------------".
+61
View File
@@ -0,0 +1,61 @@
IDENTIFICATION DIVISION.
PROGRAM-ID. PAYROLL-CALC.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 EMPLOYEE-DETAILS.
05 EMPLOYEE-NAME PIC X(30).
05 HOURS-WORKED PIC 99V9.
05 HOURLY-RATE PIC 99V99.
01 PAY-CALCULATIONS.
05 GROSS-PAY PIC 9(5)V99.
05 OVERTIME-HOURS PIC 99V9.
05 OVERTIME-PAY PIC 9(5)V99.
05 TAX-RATE PIC V99 VALUE 0.10.
05 TAX-AMOUNT PIC 9(5)V99.
05 NET-PAY PIC 9(5)V99.
PROCEDURE DIVISION.
MAIN-LOGIC.
DISPLAY "--- COBOL Payroll Calculator ---".
DISPLAY "Enter Employee Name: ".
ACCEPT EMPLOYEE-NAME.
DISPLAY "Enter Hours Worked (e.g., 40.5): ".
ACCEPT HOURS-WORKED.
DISPLAY "Enter Hourly Rate (e.g., 15.75): ".
ACCEPT HOURLY-RATE.
PERFORM CALCULATE-GROSS-PAY.
PERFORM CALCULATE-TAX.
PERFORM CALCULATE-NET-PAY.
PERFORM DISPLAY-RESULTS.
STOP RUN.
CALCULATE-GROSS-PAY.
IF HOURS-WORKED > 40 THEN
COMPUTE OVERTIME-HOURS = HOURS-WORKED - 40
COMPUTE OVERTIME-PAY = OVERTIME-HOURS * HOURLY-RATE * 1.5
COMPUTE GROSS-PAY = (40 * HOURLY-RATE) + OVERTIME-PAY
ELSE
COMPUTE GROSS-PAY = HOURS-WORKED * HOURLY-RATE
END-IF.
CALCULATE-TAX.
COMPUTE TAX-AMOUNT = GROSS-PAY * TAX-RATE.
CALCULATE-NET-PAY.
COMPUTE NET-PAY = GROSS-PAY - TAX-AMOUNT.
DISPLAY-RESULTS.
DISPLAY "----------------------------------".
DISPLAY "Employee Name: " EMPLOYEE-NAME.
DISPLAY "Hours Worked: " HOURS-WORKED.
DISPLAY "Hourly Rate: " HOURLY-RATE.
DISPLAY "Gross Pay: " GROSS-PAY.
DISPLAY "Tax (10%): " TAX-AMOUNT.
DISPLAY "Net Pay: " NET-PAY.
DISPLAY "----------------------------------".