<feed xmlns='http://www.w3.org/2005/Atom'>
<title>r-alacritty-vte.git/codegen, branch rahm</title>
<subtitle>Alacritty's VTE library with Rahm's extra hacks.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/r-alacritty-vte.git/'/>
<entry>
<title>Remove table generation</title>
<updated>2019-12-10T18:16:01+00:00</updated>
<author>
<name>Christian Duerr</name>
<email>contact@christianduerr.com</email>
</author>
<published>2019-12-10T18:16:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/r-alacritty-vte.git/commit/?id=9d37aa7a71801f3569d2a2a55dc82c37935f205a'/>
<id>9d37aa7a71801f3569d2a2a55dc82c37935f205a</id>
<content type='text'>
This completely removes the `codegen` project, which relied on outdated
libraries to parse DSLs to build the utf8 and vte state tables, to make
the library easier to maintain.

The utf8 table could be completely removed in favor of a `match`
statement, which also lead to a performance improvement with the utf8
parser.

The vte table did not benefit from `match` statements at all and instead
had significantly worse performance with it. To replace the old
codegeneration for vte, the `generate_state_changes` crate has been
created instead, which uses the language's proc_macro feature to create
a `const fn` which will generate the table at compile time.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This completely removes the `codegen` project, which relied on outdated
libraries to parse DSLs to build the utf8 and vte state tables, to make
the library easier to maintain.

The utf8 table could be completely removed in favor of a `match`
statement, which also lead to a performance improvement with the utf8
parser.

The vte table did not benefit from `match` statements at all and instead
had significantly worse performance with it. To replace the old
codegeneration for vte, the `generate_state_changes` crate has been
created instead, which uses the language's proc_macro feature to create
a `const fn` which will generate the table at compile time.</pre>
</div>
</content>
</entry>
<entry>
<title>Update to Rust 2018</title>
<updated>2019-11-23T01:01:09+00:00</updated>
<author>
<name>Christian Duerr</name>
<email>contact@christianduerr.com</email>
</author>
<published>2019-11-23T01:01:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/r-alacritty-vte.git/commit/?id=ea940fcb74abce67b927788e4f9f64fc63073d37'/>
<id>ea940fcb74abce67b927788e4f9f64fc63073d37</id>
<content type='text'>
This moves all crates in the workspace to the latest Rust standard and
resolves various style and formatting issues.

Fixes #32.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This moves all crates in the workspace to the latest Rust standard and
resolves various style and formatting issues.

Fixes #32.</pre>
</div>
</content>
</entry>
<entry>
<title>Move utf8 parsing into separate crate</title>
<updated>2016-09-18T00:03:25+00:00</updated>
<author>
<name>Joe Wilm</name>
<email>joe@jwilm.com</email>
</author>
<published>2016-09-18T00:02:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/r-alacritty-vte.git/commit/?id=917080a5c27b3310daab135f9bfdbc531cb54186'/>
<id>917080a5c27b3310daab135f9bfdbc531cb54186</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add support for UTF-8</title>
<updated>2016-09-18T00:03:20+00:00</updated>
<author>
<name>Joe Wilm</name>
<email>joe@jwilm.com</email>
</author>
<published>2016-09-17T22:51:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/r-alacritty-vte.git/commit/?id=cffdb6de59ceb3fd9983a1c19476e5109da8db97'/>
<id>cffdb6de59ceb3fd9983a1c19476e5109da8db97</id>
<content type='text'>
This adds a table-driven UTF-8 parser which only has a single branch for
the entire parser. UTF-8 support is essentially bolted onto the VTE
parser. Not the most elegant, but it does prevent the transition tables
from blowing up.

Instead of refactoring the syntax extension to handle both table
definitions, I've opted to copy/paste now for both simplicities sake and
because I can't see a clear path to a minimal shared solution.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This adds a table-driven UTF-8 parser which only has a single branch for
the entire parser. UTF-8 support is essentially bolted onto the VTE
parser. Not the most elegant, but it does prevent the transition tables
from blowing up.

Instead of refactoring the syntax extension to handle both table
definitions, I've opted to copy/paste now for both simplicities sake and
because I can't see a clear path to a minimal shared solution.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix errors in codegen</title>
<updated>2016-09-17T03:26:01+00:00</updated>
<author>
<name>Joe Wilm</name>
<email>joe@jwilm.com</email>
</author>
<published>2016-09-17T03:26:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/r-alacritty-vte.git/commit/?id=19c27105cc7a69bbe5b27714023c6fb27f676f12'/>
<id>19c27105cc7a69bbe5b27714023c6fb27f676f12</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add test for ext::Transition</title>
<updated>2016-09-17T03:25:43+00:00</updated>
<author>
<name>Joe Wilm</name>
<email>joe@jwilm.com</email>
</author>
<published>2016-09-17T03:25:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/r-alacritty-vte.git/commit/?id=171ad08b4e98bd23dd1aa9d28731c12dde35bba2'/>
<id>171ad08b4e98bd23dd1aa9d28731c12dde35bba2</id>
<content type='text'>
Debugging
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Debugging
</pre>
</div>
</content>
</entry>
<entry>
<title>Add custom Debug for ext::Transition</title>
<updated>2016-09-17T03:24:37+00:00</updated>
<author>
<name>Joe Wilm</name>
<email>joe@jwilm.com</email>
</author>
<published>2016-09-17T03:24:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/r-alacritty-vte.git/commit/?id=0e9785ccc1d2c440d4251df74c909964fd46f312'/>
<id>0e9785ccc1d2c440d4251df74c909964fd46f312</id>
<content type='text'>
This shows the variant in addition to the packed value - much more
helpful when debugging.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This shows the variant in addition to the packed value - much more
helpful when debugging.
</pre>
</div>
</content>
</entry>
<entry>
<title>Finish implementing codegen for state table</title>
<updated>2016-09-13T16:09:33+00:00</updated>
<author>
<name>Joe Wilm</name>
<email>joe@jwilm.com</email>
</author>
<published>2016-09-13T16:09:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/r-alacritty-vte.git/commit/?id=18ced2005087045bf5f83aa070f654eeb2ad955f'/>
<id>18ced2005087045bf5f83aa070f654eeb2ad955f</id>
<content type='text'>
When modifying table.rs.in, `cargo run` must be run in the `codegen`
crate. The result of expansion is included in the source tree so that
consumers don't need to pull in syntex just to compile.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When modifying table.rs.in, `cargo run` must be run in the `codegen`
crate. The result of expansion is included in the source tree so that
consumers don't need to pull in syntex just to compile.
</pre>
</div>
</content>
</entry>
<entry>
<title>Finish Transition parser</title>
<updated>2016-09-13T04:21:31+00:00</updated>
<author>
<name>Joe Wilm</name>
<email>joe@jwilm.com</email>
</author>
<published>2016-09-13T04:21:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/r-alacritty-vte.git/commit/?id=fd3e43699f48c2c6a4912714e88372a19cc1f928'/>
<id>fd3e43699f48c2c6a4912714e88372a19cc1f928</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>WIP</title>
<updated>2016-09-12T17:51:13+00:00</updated>
<author>
<name>Joe Wilm</name>
<email>joe@jwilm.com</email>
</author>
<published>2016-09-12T17:51:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/r-alacritty-vte.git/commit/?id=dca1c5c633981aa96932e0d50d3e27fe7de7a2b2'/>
<id>dca1c5c633981aa96932e0d50d3e27fe7de7a2b2</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
