coq for languages.md

This commit is contained in:
Paul Gauthier 2024-06-05 20:24:19 -07:00
parent e3cc69d0c8
commit 0d9150c77b
4 changed files with 151 additions and 6 deletions

View file

@ -39,14 +39,15 @@ $ aider --opus
## Features
- Chat with aider about your code by running `aider <file1> <file2> ...`
- Aider will edit the content of your source files.
- Aider works with most popular languages: python, javascript, typescript, php, html, css, and more...
- Aider works well with GPT-4o, Claude 3 Opus, GPT-3.5 and supports [connecting to almost any LLM](https://aider.chat/docs/llms.html).
- Chat with aider about your code: `aider <file1> <file2> ...`
- Ask for changes:
- Request new features, changes, improvements, or bug fixes to your code.
- Ask for new test cases, updated documentation or code refactors.
- Paste in a GitHub issue url and aider will try to solve it.
- Aider [automatically git commits changes](https://aider.chat/docs/faq.html#how-does-aider-use-git) These frequent, automatic commits provide a safety net. It's easy to undo changes or use standard git workflows to manage longer sequences of changes.
- Aider will edit your files.
- Aider [automatically git commits changes](https://aider.chat/docs/faq.html#how-does-aider-use-git) with a sensible commit message.
- Aider works with most popular languages: python, javascript, typescript, php, html, css, and more...
- Aider works well with GPT-4o, Claude 3 Opus, GPT-3.5 and supports [connecting to almost any LLM](https://aider.chat/docs/llms.html).
- Aider can make coordinated changes across multiple files at once.
- Aider uses a [map of your entire git repo](https://aider.chat/docs/repomap.html), which helps it work well in larger codebases.
- You can also edit files in your editor while chatting with aider.

View file

@ -500,6 +500,19 @@ def get_random_color():
return res
def get_supported_languages_md():
from grep_ast.parsers import PARSERS
res = ""
data = sorted((lang, ex) for ex, lang in PARSERS.items())
for lang, ext in data:
res += "<tr>"
res += f'<td style="text-align: center;">{lang:20}</td>\n'
res += f'<td style="text-align: center;">{ext:20}</td>\n'
res += "</tr>"
return res
if __name__ == "__main__":
fnames = sys.argv[1:]

View file

@ -13,3 +13,4 @@ cog $ARG \
website/index.md \
website/docs/usage.md \
website/docs/commands.md \
website/docs/languages.md

130
website/docs/languages.md Normal file
View file

@ -0,0 +1,130 @@
---
nav_order: 50
---
# Supported languages
Aider will work with most every popular code language,
because the leading LLMs know most of them.
Even if your language isn't listed below, aider may still be effective for you.
The best thing to do is try!
Aider uses a [map of your entire git repo](https://aider.chat/docs/repomap.html),
which helps it work well in larger codebases.
Aider uses tree-sitter to understand the language listed below,
and can analyze them when creating the repo map.
<table>
<tr>
<th>
Language
</th>
<th>
File extension
</th>
</tr>
<!--[[[cog
from aider.repomap import get_supported_languages_md
cog.out(get_supported_languages_md())
]]]-->
<tr><td style="text-align: center;">bash </td>
<td style="text-align: center;">.bash </td>
</tr><tr><td style="text-align: center;">c </td>
<td style="text-align: center;">.c </td>
</tr><tr><td style="text-align: center;">c_sharp </td>
<td style="text-align: center;">.cs </td>
</tr><tr><td style="text-align: center;">commonlisp </td>
<td style="text-align: center;">.cl </td>
</tr><tr><td style="text-align: center;">cpp </td>
<td style="text-align: center;">.cc </td>
</tr><tr><td style="text-align: center;">cpp </td>
<td style="text-align: center;">.cpp </td>
</tr><tr><td style="text-align: center;">css </td>
<td style="text-align: center;">.css </td>
</tr><tr><td style="text-align: center;">dockerfile </td>
<td style="text-align: center;">.dockerfile </td>
</tr><tr><td style="text-align: center;">dot </td>
<td style="text-align: center;">.dot </td>
</tr><tr><td style="text-align: center;">elisp </td>
<td style="text-align: center;">.el </td>
</tr><tr><td style="text-align: center;">elixir </td>
<td style="text-align: center;">.ex </td>
</tr><tr><td style="text-align: center;">elm </td>
<td style="text-align: center;">.elm </td>
</tr><tr><td style="text-align: center;">embedded_template </td>
<td style="text-align: center;">.et </td>
</tr><tr><td style="text-align: center;">erlang </td>
<td style="text-align: center;">.erl </td>
</tr><tr><td style="text-align: center;">go </td>
<td style="text-align: center;">.go </td>
</tr><tr><td style="text-align: center;">gomod </td>
<td style="text-align: center;">.gomod </td>
</tr><tr><td style="text-align: center;">hack </td>
<td style="text-align: center;">.hack </td>
</tr><tr><td style="text-align: center;">haskell </td>
<td style="text-align: center;">.hs </td>
</tr><tr><td style="text-align: center;">hcl </td>
<td style="text-align: center;">.hcl </td>
</tr><tr><td style="text-align: center;">html </td>
<td style="text-align: center;">.html </td>
</tr><tr><td style="text-align: center;">java </td>
<td style="text-align: center;">.java </td>
</tr><tr><td style="text-align: center;">javascript </td>
<td style="text-align: center;">.js </td>
</tr><tr><td style="text-align: center;">javascript </td>
<td style="text-align: center;">.mjs </td>
</tr><tr><td style="text-align: center;">jsdoc </td>
<td style="text-align: center;">.jsdoc </td>
</tr><tr><td style="text-align: center;">json </td>
<td style="text-align: center;">.json </td>
</tr><tr><td style="text-align: center;">julia </td>
<td style="text-align: center;">.jl </td>
</tr><tr><td style="text-align: center;">kotlin </td>
<td style="text-align: center;">.kt </td>
</tr><tr><td style="text-align: center;">lua </td>
<td style="text-align: center;">.lua </td>
</tr><tr><td style="text-align: center;">make </td>
<td style="text-align: center;">.mk </td>
</tr><tr><td style="text-align: center;">objc </td>
<td style="text-align: center;">.m </td>
</tr><tr><td style="text-align: center;">ocaml </td>
<td style="text-align: center;">.ml </td>
</tr><tr><td style="text-align: center;">perl </td>
<td style="text-align: center;">.pl </td>
</tr><tr><td style="text-align: center;">php </td>
<td style="text-align: center;">.php </td>
</tr><tr><td style="text-align: center;">python </td>
<td style="text-align: center;">.py </td>
</tr><tr><td style="text-align: center;">ql </td>
<td style="text-align: center;">.ql </td>
</tr><tr><td style="text-align: center;">r </td>
<td style="text-align: center;">.R </td>
</tr><tr><td style="text-align: center;">r </td>
<td style="text-align: center;">.r </td>
</tr><tr><td style="text-align: center;">regex </td>
<td style="text-align: center;">.regex </td>
</tr><tr><td style="text-align: center;">rst </td>
<td style="text-align: center;">.rst </td>
</tr><tr><td style="text-align: center;">ruby </td>
<td style="text-align: center;">.rb </td>
</tr><tr><td style="text-align: center;">rust </td>
<td style="text-align: center;">.rs </td>
</tr><tr><td style="text-align: center;">scala </td>
<td style="text-align: center;">.scala </td>
</tr><tr><td style="text-align: center;">sql </td>
<td style="text-align: center;">.sql </td>
</tr><tr><td style="text-align: center;">sqlite </td>
<td style="text-align: center;">.sqlite </td>
</tr><tr><td style="text-align: center;">toml </td>
<td style="text-align: center;">.toml </td>
</tr><tr><td style="text-align: center;">tsq </td>
<td style="text-align: center;">.tsq </td>
</tr><tr><td style="text-align: center;">typescript </td>
<td style="text-align: center;">.ts </td>
</tr><tr><td style="text-align: center;">typescript </td>
<td style="text-align: center;">.tsx </td>
</tr><tr><td style="text-align: center;">yaml </td>
<td style="text-align: center;">.yaml </td>
</tr>
<!--[[[end]]]-->
</table>