I've been using GNU/Linux for over a year now. And there's this question to which I need an answer from you, Linux gurus:

What language(s) do config files like .bashrc, .vimrc, .i3status.conf, .conkyrc, .xinitrc, etc. use?

  • 2
    Configurations are (most of the time) not written in any language. They usually contain simple key value mappings, how these are to be made depends entirely on the program to be configured (and sometimes, the language that program is written in). There is no "one fits all" answer
    – Panki
    Commented Jul 4, 2021 at 12:02

1 Answer 1


There's no global standard. They can be (and are) all different syntaxes.

For example,

  • the bashrc is simply a bash script,
  • the vimrc a vimscript script,
  • i3 uses its own syntax that's pretty close to a scripting language (but they claim it isn't a programming language, but I think they're lying there, the conditional screen placement thing looks extremely much like you can build a turing machine out of it),
  • xinitrc is just an arbitrary script (which will be run by the shell specified in the #! line at the beginning of the file, so it could just as well by say, Python, bash, zsh, tcl, perl, …
  • Conky uses JSON or YAML, I think,

Essentially, there is no standard, and you always need to read the documentation.

  • Thanks so much for the answer, Mr. Marcus Müller. :)
    – Wade Wayne
    Commented Jul 4, 2021 at 14:22

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .