/vsc_sheets_formula_extension

A Visual Studio Code Extension to support syntax highlighting of Google Sheets formulas.

Syntax Highlighter for Google Sheets formulas

Simply put there is no Syntax Highlighting for Google Sheets formulas in Visul Studio code.

Features

Syntax Highlighting for:

  • Sheets Functions Keywords like IF, DATE, DEC2HEX...
  • Single line comments
  • Double line comments
  • Single quote strings
  • Double quote strings
  • Support for number highlighting
  • Special Characters like =, <> , =!

Technical Information

Syntax highlighting is done by corresponding to textmate elements.

Keywords

Patterns matched to keyword.control:

AND, IF, IFERROR, IFNA, IFs, NOT, OR, SWITCH, XOR

Comments

Pattern matched to comment.line.double-slash:

lines starting with '//'

Pattern matched to comment.block:

Blocks starting with '/' and ending with '/'

Support

Patterns matched to support.function:

ABS, ACCRINT, ACCRINTM, ACOS, ACOSH, ACOT, ACOTH, ADDRESS, AMORLINC, ARABIC, ARRAY_CONSTRAIN, ARRAYFORMULA, ASC, ASIN, ASINH, ATAN, ATAN2, ATANH, AVEDEV, AVERAGE, AVERAGE.WEIGHTED, AVERAGEA, AVERAGEIF, AVERAGEIFS, BASE, BETA.DIST, BETA.INV, BETADIST, BETAINV, BIN2DEC, BIN2HEX, BIN2OCT, BINOM.DIST, BINOM.INV, BINOMDIST, BITAND, BITLSHIFT, BITOR, BITRSHIFT, BITXOR, CEILING, CEILING.MATH, CEILING.PRECISE, CELL, CHAR, CHIDIST, CHIINV, CHISQ.DIST, CHISQ.DIST.RT, CHISQ.INV, CHISQ.INV.RT, CHISQ.TEST, CHITEST, CHOOSE, CLEAN, CODE, COLUMN, COLUMNS, COMBIN, COMBINA, COMPLEX, CONCATENATE, CONFIDENCE, CONFIDENCE.NORM, CONFIDENCE.T, CONVERT, CORREL, COS, COSH, COT, COTH, COUNT, COUNTA, COUNTBLANK, COUNTIF, COUNTIFS, COUNTUNIQUE, COUPDAYBS, COUPDAYS, COUPDAYSNC, COUPNCD, COUPNUM, COUPPCD, COVAR, COVARIANCE.P, COVARIANCE.S, CRITBINOM, CSC, CSCH, CUMIPMT, CUMPRINC, DATE, DATEDIF, DATEVALUE, DAVERAGE, DAY, DAYS, DAYS360, DB, DCOUNT, DCOUNTA, DDB, DEC2BIN, DEC2HEX, DEC2OCT, DECIMAL, DEGREES, DELTA, DETECTLANGUAGE, DEVSQ, DGET, DISC, DMAX, DMIN, DOLLAR, DOLLARDE, DOLLARFR, DPRODUCT, DSTDEV, DSTDEVP, DSUM, DURATION, DVAR, DVARP, EDATE, EFFECT, ENCODEURL, EOMONTH, ERF, ERF.PRECISE, ERFC, ERFC.PRECISE, ERROR.TYPE, EVEN, EXACT, EXP, EXPON.DIST, EXPONDIST, F.DIST, F.DIST.RT, F.INV, F.INV.RT, F.TEST, FACT, FACTDOUBLE, FDIST, FILTER, FIND, FINDB, FINV, FISHER, FISHERINV, FIXED, FLOOR, FLOOR.MATH, FLOOR.PRECISE, FORECAST, FORECAST.LINEAR, FORMULATEXT, FREQUENCY, FTEST, FV, FVSCHEDULE, GAMMA, GAMMA.DIST, GAMMA.INV, GAMMADIST, GAMMAINV, GAMMALN, GAMMALN.PRECISE, GAUSS, GCD, GEOMEAN, GESTEP, GETPIVOTDATA, GOOGLEFINANCE, GOOGLETRANSLATE, GROWTH, HARMEAN, HEX2BIN, HEX2DEC, HEX2OCT, HLOOKUP, HOUR, HYPERLINK, HYPGEOM.DIST, HYPGEOMDIST, IMABS, IMAGE, IMAGINARY, IMARGUMENT, IMCONJUGATE, IMCOS, IMCOSH, IMCOT, IMCOTH, IMCSC, IMCSCH, IMDIV, IMEXP, IMLN, IMLOG, IMLOG10, IMLOG2, IMPORTDATA, IMPORTFEED, IMPORTHTML, IMPORTRANGE, IMPORTXML, IMPOWER, IMPRODUCT, IMREAL, IMSEC, IMSECH, IMSIN, IMSINH, IMSQRT, IMSUB, IMSUM, IMTAN, IMTANH, INDEX, INDIRECT, INT, INTERCEPT, INTRATE, IPMT, IRR, ISBLANK, ISDATE, ISEMAIL, ISERR, ISERROR, ISEVEN, ISFORMULA, ISLOGICAL, ISNA, ISNONTEXT, ISNUMBER, ISO.CEILING, ISODD, ISOWEEKNUM, ISPMT, ISREF, ISTEXT, ISURL, JOIN, KURT, LARGE, LCM, LEFT, LEFTB, LEN, LENB, LINEST, LN, LOG, LOG10, LOGEST, LOGINV, LOGNORM.DIST, LOGNORM.INV, LOGNORMDIST, LOOKUP, LOWER, MATCH, MAX, MAXA, MAXIFS, MDETERM, MDURATION, MEDIAN, MID, MIDB, MIN, MINA, MINIFS, MINUTE, MINVERSE, MIRR, MMULT, MOD, MODE, MODE.MULT, MODE.SNGL, MONTH, MROUND, MULTINOMIAL, MUNIT, N, NA, NEGBINOM.DIST, NEGBINOMDIST, NETWORKDAYS, NETWORKDAYS.INTL, NOMINAL, NORM.DIST, NORM.INV, NORM.S.DIST, NORM.S.INV, NORMDIST, NORMINV, NORMSDIST, NORMSINV, NOW, NPER, NPV, OCT2BIN, OCT2DEC, OCT2HEX, ODD, OFFSET, PDURATION, PEARSON, PERCENTILE, PERCENTILE.EXC, PERCENTILE.INC, PERCENTRANK, PERCENTRANK.EXC, PERCENTRANK.INC, PERMUT, PERMUTATIONA, PHI, PI, PMT, POISSON, POISSON.DIST, POWER, PPMT, PRICE, PRICEDISC, PRICEMAT, PROB, PRODUCT, PROPER, PV, QUARTILE, QUARTILE.EXC, QUARTILE.INC, QUERY, QUOTIENT, RADIANS, RAND, RANDARRAY, RANDBETWEEN, RANK, RANK.AVG, RANK.EQ, RATE, RECEIVED, REGEXEXTRACT, REGEXMATCH, REGEXREPLACE, REPLACE, REPLACEB, REPT, RIGHT, RIGHTB, ROMAN, ROUND, ROUNDDOWN, ROUNDUP, ROW, ROWS, RRI, RSQ, SEARCH, SEARCHB, SEC, SECH, SECOND, SEQUENCE, SERIESSUM, SIGN, SIN, SINH, SKEW, SKEW.P, SLN, SLOPE, SMALL, SORT, SORTN, SPARKLINE, SPLIT, SQRT, SQRTPI, STANDARDIZE, STDEV, STDEV.P, STDEV.S, STDEVA, STDEVP, STDEVPA, STEYX, SUBSTITUTE, SUBTOTAL, SUM, SUMIF, SUMIFS, SUMPRODUCT, SUMSQ, SUMX2MY2, SUMX2PY2, SUMXMY2, SYD, T, T.DIST, T.DIST.2T, T.DIST.RT, T.INV, T.INV.2T, T.TEST, TAN, TANH, TBILLEQ, TBILLPRICE, TBILLYIELD, TDIST, TEXT, TEXTJOIN, TIME, TIMEVALUE, TINV, TO_DATE, TO_DOLLARS, TO_PERCENT, TO_PURE_NUMBER, TO_TEXT, TODAY, TRANSPOSE, TREND, TRIM, TRIMMEAN, TRUNC, TTEST, TYPE, UNICHAR, UNICODE, UNIQUE, UPPER, VALUE, VAR, VAR.P, VAR.S, VARA, VARP, VARPA, VDB, VLOOKUP, WEEKDAY, WEEKNUM, WEIBULL, WEIBULL.DIST, WORKDAY, WORKDAY.INTL, XIRR, XNPV, YEAR, YEARFRAC, YIELD, YIELDDISC, YIELDMAT, Z.TEST, ZTEST

Strings

Pattern matched to string.quoted.single:

Comments encapsulated by ' & '

Pattern matched to string.quoted.double:

Comments encapsulated by " & "

Constants

Pattern matched to constant.character:

<,>,=,!,$,:

Pattern matched to constant.language:

FALSE, TRUE

Pattern matched to constant.numeric:

Numbers 0-9