#+TITLE: :lang csharp * Table of Contents :TOC: - [[#description][Description]] - [[#module-flags][Module Flags]] - [[#plugins][Plugins]] - [[#prerequisites][Prerequisites]] - [[#macos][MacOS]] - [[#arch-linux][Arch Linux]] - [[#nixos][NixOS]] * Description This module adds C# support to Emacs. Powered by omnisharp (directly or through LSP). ** Module Flags + =+lsp= Enables omnisharp through LSP support (requires omnisharp). + =+unity= Enables special support for the [[https://unity.com/][Unity game engine]] (particularly, support for HLSL shaders). ** Plugins + [[https://github.com/josteink/csharp-mode][csharp-mode]] + [[https://github.com/OmniSharp/omnisharp-emacs][omnisharp]]* (not =+lsp=) + [[https://github.com/midnightSuyama/shader-mode][shader-mode]]* (=+unity=) * Prerequisites This module needs: + omnisharp (with the ~+lsp~ flag, this must be installed externally. Without it, use ~M-x omnisharp-install-server~) + .NET SDKs (on Windows) + Mono (on UNIX platforms) ** TODO MacOS ** Arch Linux #+BEGIN_SRC sh sudo pacman --needed --noconfirm -S mono #+END_SRC ** TODO NixOS