Skip to content

Instantly share code, notes, and snippets.

View kLabz's full-sized avatar
🦆
\_o<

Rudy Ges kLabz

🦆
\_o<
View GitHub Profile

Introduction

Newbies and experienced professional programmers alike appreciate the concept of the IDE, or integrated development environment. Having the primary tools necessary for organising, writing, maintaining, testing, and debugging code in an integrated application with common interfaces for all the different tools is certainly a very valuable asset. Additionally, an environment expressly designed for programming in various languages affords advantages such as autocompletion, and syntax checking and highlighting.

With such tools available to developers on all major desktop operating systems including Linux and BSD, and with many of the best free of charge, there’s not really a good reason to write your code in Windows Notepad, or with nano or cat.

However, there’s a minor meme among devotees of Unix and its modern-day derivatives that “Unix is an IDE”, meaning that the tools available to developers on the terminal cover the majo

Keybase proof

I hereby claim:

  • I am klabz on github.
  • I am klabz (https://keybase.io/klabz) on keybase.
  • I have a public key ASCaOAOV_l8AZBQGRXZW_-9JU1EyH-hEy0UvOKQNLuKaVwo

To claim this, I am signing this object:

@kLabz
kLabz / haxelsp.md
Last active April 18, 2019 12:54
Haxe + LSP + Neovim
@kLabz
kLabz / README.md
Last active May 6, 2018 19:50
Haxe modular regression

I cannot reference Main module in bundles any more since 0.7.4. Common modules work fine, but not main which gets compiles as

var Main, X = $s.a /*, etc.*/;

Main.hx

package;
@kLabz
kLabz / Test.hx
Created May 2, 2019 08:20
Extends<T>
class Test {
static function main() {
var a:Extends<A> = extended({a: "hello", b: "world"});
$type(a); // Extends<A>
trace(haxe.Json.stringify(a));
a.a = "bye";
// a.a = 42; // Int should be String
// a.b = "nope"; // Extends<A> has no field b
trace(haxe.Json.stringify(a));
@kLabz
kLabz / 00 - README.md
Created June 2, 2019 14:38
[Haxe] Use lix projects without lix
  • Place lix-to-install and lix-to-haxelib in a directory being in your $PATH (~/.bin for example, which you may have to add to your $PATH) and chmod them with chmod +x.

  • Generate a install.hxml file by running this in your project: lix-to-install > install.hxml

  • Install dependencies via haxelib (needs HaxeFoundation/haxelib#456): haxelib install --skipdeps --always install.hxml

@kLabz
kLabz / README.md
Created July 30, 2019 13:55
Haxe MaterialUI: withStyles

Using Styles.withStyles to style your components

Component without public props

private typedef Props = {
	var classes:TClasses;
}

private typedef TClasses = Classes<[
@kLabz
kLabz / App.html
Last active April 1, 2020 13:39 — forked from RayMPerry/App.html
Macro issues.
<div className="App">
<header className="App-header">
<img src=$logo className="App-logo" alt="logo" />
<p>
Edit <code>src/App.hx</code> and save to reload.
</p>
</header>
</div>
@kLabz
kLabz / DefaultClient.hx
Created June 8, 2020 07:54
Haxe + Apollo: getting started
import apollo.client.ApolloClient;
import apollo.cache.inmemory.InMemoryCache;
import apollo.link.ApolloLink;
import apollo.link.http.HttpLink;
import apollo.link.error.ErrorLink;
import apollo.link.error.ErrorResponse;
class DefaultClient extends ApolloClient<Any> {
public function new(uri:String) {
super({
@kLabz
kLabz / hlc.md
Created October 21, 2020 13:17 — forked from Yanrishatum/hlc.md
How to compile HL/C

How to compile HL/C

Prepwork/terms

Because I have no trust in people.

  • <hashlink> points to your installation of Hashlink, e.g. folder in which hl.exe (or Unix executable) is, alongside with library binaries (.hdll files), and include folder.
  • <src> points to the folder containing generated HL/C sources. One that contains hlc.json file.
  • <app> refers to your output executable name, including extension.
  • <main> refers to your entry-point file name, including extension (see below).
  • I provide example of doing it on Windows via MSVC cl.exe, but Unix should be more or less same with replacement of argument flags and compiler.
  • I expect that you DO have a compiler installed and can call cl.exe or other compiler from command-line.