Hardcodes is a utility for searching strings hardcoded by developers in programs. It uses a modular tokenizer that can handle comments, any number of backslashes & nearly any syntax you throw at it.
Yes, it is designed to process any syntax and following languages are officially supported:
ada, applescript, c, c#, c++, coldfusion, golang, haskell, html, java, javascript, jsp, lua, pascal, perl, php, powershell, python, ruby, scala, sql, swift, xml
Installation
pip3 install hardcodes
git clone https://github.com/s0md3v/hardcodes
cd hardcodes && python3 setup.py install
Documentation
It is available as both a library as well as a command line program. The relevant documentation can be found below:
For Developers
The sample program below demonstrates usage of hardcodes
library
from hardcodes import search
string = “console.log(‘hello there’)”
result = search(string, lang=”common”, comments=”parse”)
print(result)
Output: [‘hello there’]
The arguments lang
and comments
are optional. Their use is explained below in the user documentation section.
For Users
cli.py
provides a grep-like command line interface to hardcodes
library. You will need to install the library first to use it.
python cli.py /path/to/file.ext
python cli.py -r /path/to/dir
python cli.py -o /path/to/file.ext
Specifying a language is optional and should be used only when the programming language of source is already known.
python cli.py -l ‘golang’ /path/to/file.go
With -c
option, you can specify
ignore
ignore the comments completelyparse
parse the comments like codestring
add comments to list of hardcoded stringspython cli.py -o /path/to/file.ext
Introduction to the Model Context Protocol (MCP) The Model Context Protocol (MCP) is an open…
While file extensions in Linux are optional and often misleading, the file command helps decode what a…
The touch command is one of the quickest ways to create new empty files or update timestamps…
Handling large numbers of files is routine for Linux users, and that’s where the find command shines.…
Managing files and directories is foundational for Linux workflows, and the mv (“move”) command makes it easy…
Creating directories is one of the earliest skills you'll use on a Linux system. The mkdir (make…