tree-sitter parser and syntax highlighter for the Dwarf Fortress raw language
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
JellyApple102 97aaf65805 update REAME 2 years ago
bindings initial commit 2 years ago
images update images 2 years ago
queries update regex 2 years ago
src update regex 2 years ago
test/corpus update regex 2 years ago
.gitignore update .gitignore 2 years ago
Cargo.toml initial commit 2 years ago
LICENSE add LICENSE 2 years ago update REAME 2 years ago
binding.gyp initial commit 2 years ago
grammar.js update regex 2 years ago
package.json initial commit 2 years ago


A simple language parser and highlighter made with tree-sitter

tokyonight tokyonight one tokyonight two

nightfly nightfly one nightfly two

Using with nvim-treesitter

Please refer to the adding parsers section on the nvim-treesitter page for more information.

Example config:

local parser_config = require'nvim-treesitter.parsers'.get_parser_configs()
parser_config.dfraw = {
	install_info = {
		url = '',
		files = { 'src/parser.c' },
		branch = 'main'
	filetype = 'text',
	used_by = { 'dfraw' }

Wrap in lua << EOF and EOF to use in init.vim.
Then run :TSInstall dfraw to install the parser.

In order for syntax highlighting to work you copy queries/highlights.scm file from this repo to your nvim-treesitter location queries/dfraw/highlights.scm. More information can be found on the nvim-treesitter page.

By default it is setup to start for any file of type 'text' or 'dfraw'. If you would not like to use it for all text files you can add a custom filetype to neovim. Example .config/nvim/scripts.vim:

if did_filetype()
if getline(1) =~# '[a-z_]'
	setfiletype dfraw

This will match any file whose first line is just lowercase letters_and_underscores, and set the filetype to 'dfraw'. Than change the config option filetype = 'dfraw' and remove the used_by option to only use 'dfraw' type files.

More information on custom filetypes here.

Highlight Colors

Feel free to change the highlight groups set by highlights.scm. I have found that some colors schemes use the same or similar colors for different groups. I have set them to what I like best using the tokyonight theme.

Use :highlight to view your current highlight groups and colors.