Note
A more bleeding-edge version of this is available here.
A pretty simple custom LSP hover window that tries to solve the issues I face with the built-in one.
Note
A more bleeding-edge version of this is available here.
A pretty simple custom LSP hover window that tries to solve the issues I face with the built-in one.
Each day at our company, developers are required to document their activities, painstakingly jotting down their daily work and future plans. A monotonous chore that I just really dislike.
So now, there's a scribe for that :
| # Created with: $ diagtool tree | |
| -Wall | |
| -Wextra | |
| -Wpedantic | |
| -Warray-bounds-pointer-arithmetic | |
| -Wbind-to-temporary-copy | |
| -Wcalled-once-parameter | |
| -Wcast-align |
| { config, pkgs, lib, ... }: | |
| let | |
| nvidia-offload = pkgs.writeShellScriptBin "nvidia-offload" '' | |
| export __NV_PRIME_RENDER_OFFLOAD=1 | |
| export __NV_PRIME_RENDER_OFFLOAD_PROVIDER=NVIDIA-G0 | |
| export __GLX_VENDOR_LIBRARY_NAME=nvidia | |
| export __VK_LAYER_NV_optimus=NVIDIA_only | |
| exec -a "$0" "$@" | |
| ''; |
| :def hoogle \x -> return $ ":!hoogle --count=15 \"" ++ x ++ "\"" | |
| :def doc \x -> return $ ":!hoogle --info \"" ++ x ++ "\"" | |
| :set -Wall | |
| :set -fno-warn-type-defaults -ferror-spans -freverse-errors -fprint-expanded-synonyms | |
| :set prompt "\ESC[0;32m%s\n\ESC[m[ghci]\ESC[38;5;172mλ \ESC[m" | |
| :set prompt-cont " \ESC[38;5;172m> \ESC[m" |
The set lines
set -euxo pipefail is short for:set -e
set -u
| [package] | |
| name = "test-rust" | |
| version = "0.1.0" | |
| authors = ["yihuang <[email protected]>"] | |
| edition = "2018" | |
| # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html | |
| [dependencies] |
I'll preface this with three things. 1. I prefer schemes over Common Lisps, and I prefer Racket of the Schemes. 2. There is more to it than the points I raise here. 3. I assume you have no previous experience with Lisp, and don't have a preference for Schemes over Common Lisp. With all that out of the way... I would say Common Lisp/SBCL. Let me explain
Now as to why Common Lisp over Scheme
I did not submit this to Hacker News and did not intend that this post would have high circulation but have no real problem with it being there or with it having such. I have more recent comments below. This post is from January 2020 and predates the Modular Font Editor K (MFEK) project.
I have not worked on Rust projects in quite a while, and don't know if I ever will again. I feel many crate maintainers are way too perfectionist, for example, despite all the developer hours that went into this PR, it took the effort within years to be (halfway) merged.
There's always a reason not to merge, isn't there? It would be better done with a new nightly language feature, or the function signature should have a where clause, or the documentation is not perfect. There's always a new nit to pick in the world of Ru