Getting Started
Install NashmiC and write your first program in under two minutes.
Requirements
- A C11 compiler (
gccorclang) makegit- Linux or macOS
Install
Homebrew (macOS / Linux)
brew tap Ziadstr/nashmic
brew install nashmicAUR (Arch Linux)
yay -S nashmic-gitDebian / Ubuntu
Download the .deb from Releases and install:
sudo dpkg -i nashmic_*.debOne-liner
curl -fsSL https://raw.githubusercontent.com/Ziadstr/nashmic/main/install.sh | bashBuild from source
git clone https://github.com/Ziadstr/nashmic.git
cd nashmic
make
sudo make installEditor Support
Install the VS Code extension for syntax highlighting and snippets:
code --install-extension ziadstr.nashmicOr search "NashmiC" in the Extensions panel (Ctrl+Shift+X). Includes syntax highlighting for 80+ keywords, 22 code snippets, bracket matching, format-on-save, and run/build commands.
Neovim / Helix / Zed (Tree-sitter)
NashmiC has a full tree-sitter grammar with syntax highlighting queries. See the Neovim setup guide for installation instructions.
Try It Online
Don't want to install? Try NashmiC in your browser with pre-loaded examples:
Your First Program
Create a file called marhaba.nsh:
yalla() {
itba3("marhaba ya 3alam!\n")
}Every NashmiC program needs a yalla() function. It's the entry point, like main in C. The word means "let's go!" in Jordanian.
Run It
mansaf run marhaba.nshmansaf run compiles and executes in one step.
Build a Binary
mansaf build marhaba.nsh
./marhabaAdd --tarab for celebratory audio on success. "Tarab" means musical ecstasy. Because shipping code deserves a party.
Try String Interpolation
yalla() {
khalli name: nass = "Ziad"
khalli age: adad64 = 23
itba3("marhaba ya {name}!\n")
itba3("age: {age}, next year: {age + 1}\n")
}Try a Loop
yalla() {
lakol i fi 0..10 {
itba3("{i}\n")
}
}lakol means "for each," fi means "in." The range 0..10 goes from 0 up to (not including) 10.