diff --git a/modules/lang/csharp/README.org b/modules/lang/csharp/README.org index 89667cbb6..d3a0692f0 100644 --- a/modules/lang/csharp/README.org +++ b/modules/lang/csharp/README.org @@ -17,13 +17,15 @@ LSP). + =+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). ++ =+dotnet= Enables Dotnet transient interface with Sharper ** Plugins + [[https://github.com/josteink/csharp-mode][csharp-mode]] + [[https://github.com/omajid/csproj-mode][csproj-mode]] + [[https://github.com/OmniSharp/omnisharp-emacs][omnisharp]]* (not =+lsp=) + [[https://github.com/midnightSuyama/shader-mode][shader-mode]]* (=+unity=) - ++ [[https://github.com/sebasmonia/sharper][sharper]] (=+dotnet=) + * Prerequisites This module needs: @@ -31,6 +33,7 @@ This module needs: it, use ~M-x omnisharp-install-server~) + .NET SDKs (on Windows) + Mono (on UNIX platforms) ++ .NET Core 1.X - 3.X or .NET 5 for cross platform ** TODO MacOS ** Arch Linux diff --git a/modules/lang/csharp/config.el b/modules/lang/csharp/config.el index 514dbf3c8..e5f009019 100644 --- a/modules/lang/csharp/config.el +++ b/modules/lang/csharp/config.el @@ -43,7 +43,6 @@ or terminating simple string." (unless (eq major-mode 'csharp-mode) (apply orig-fn args)))) - (use-package! omnisharp :unless (featurep! +lsp) :commands omnisharp-install-server @@ -96,4 +95,9 @@ or terminating simple string." :files (and "Assets" "Library/MonoManager.asset" "Library/ScriptMapper"))) +(use-package! sharper + :when (featurep! +dotnet) + :general ("C-c d" #'sharper-main-transient)) + + (use-package! sln-mode :mode "\\.sln\\'") diff --git a/modules/lang/csharp/packages.el b/modules/lang/csharp/packages.el index ff9ab7264..c22d8d9a4 100644 --- a/modules/lang/csharp/packages.el +++ b/modules/lang/csharp/packages.el @@ -8,3 +8,5 @@ (package! omnisharp :pin "8ec59296b2e2a12d8ea146fb7056091fbb7bdd10")) (when (featurep! +unity) (package! shader-mode :pin "d7dc8d0d6fe8914e8b6d5cf2081ad61e6952359c")) +(when (featurep! +dotnet) + (package! sharper :pin "d610b839dbb907cc0a49b7edfe7fe39aa3f9dd6d"))