#' is just shorthand for function, just as ' is shorthand for quote.
You can use it anywhere where you want to indicate to the byte-compiler or the interpreter or a human reader that its argument is expected to be (is treated as) a function.
In many contexts the context determines how the argument is treated if, for example, you simply quote it (use quote ...
#' (aka function) can be used in front of (lambda ...) but it's redundant there, so the only place where it's really meaningful is in front of a symbol, as in #'car. In ELisp, #'car and 'car are almost completely equivalent, so one of the main purpose is simply to document the intention (i.e. to indicate to whoever reads this code that you intend to use ...
If you want to get a well formatted text document, you can use emacs and others packages like LaTeX, ConTeXt, org-mode, or markdown (and pandoc) to get a beautiful and well structured pdf/html/ePub document. Emacs is very efficient for coding any markup language. On the other hand, if you want organizing your notes with syntax highlighting, you can use org-...
Set point on the line in question and press C-c C-s to call c-show-syntactic-information. This shows you which variable you need to set.
I set this to:
(c-offsets-alist . (
(arglist-intro . c-lineup-arglist-intro-after-paren))) ;; first parameter after open paren
which is not quite that what you want, but instead of c-lineup-arglist-intro-after-paren ...
You can use shfmt to format shell/bash code. It is configurable, so you should be able to get the Google style with something like shfmt -i 2 -ci.
It's a standalone tool, but it should be easy enough to integrate with editors and IDEs. There are plugins for vim, atom, and vscode already.
org-ref does not play well (natively) with docx, odt or html export. Its creator (J. Kitchin) explains why in several blog posts.
I don't know if this is the canonical (or even a good) way to proceed, but here is the workaround I use when I want clean references for an html export.
Install ox-bibtex (i.e., put it your load-path and add (require 'ox-bibtex) ...
While composing this and doing my due diligence, I solved my problem. For some reason, Emacs generated the expression with the name I chose to name the style as the base style, and because I specified the same name for both the base style and the added style name, it got into an infinite recursion loop in c-get-style-variables when it tried to evaluate ...
You might try customizing one or both of these image-dired options (the text is what you get with C-h v).
image-dired-thumb-relief - Size of button-like border around thumbnails.
image-dired-thumb-margin - Size of the margin around thumbnails. This is where you see the cursor.
There are many other image-dired options, some of which might also help you more ...
OK… wasn't aware of rainbow-mode, wich does exactly, what I intended. Of cource I found it after I posted question here ^^.
So the solution is:
M-x package-install RET rainbow-mode RET
To answer my question completely and enable it in all modes: I added
(define-globalized-minor-mode global-rainbow-mode rainbow-mode
(lambda () (rainbow-mode 1)))
Re-reading about style variables, I assumed boundp was not doing what I expected. I guess this function was written before CC mode 5.26, and that it's what footnote 1 in the link above refers too.
Now, c-basic-offset is automatically set to set-from-style if not globally set.
I changed the function to this and got it working as I expect:
Smart Tabs is a mode that will do what you want -- indent with tabs, align with spaces.
From the documentation, once you install it, you can disable it normally, but enable it in c-mode this way:
(setq-default indent-tabs-mode nil)
(lambda () (setq indent-tabs-mode t)))
This is somewhere between fully intentional and a bug. I'm not sure towards which side this one leans to, so I'll just let the sources speak for themselves:
(defun elint-add-required-env (env name file)
"Augment ENV with the variables defined by feature NAME in FILE."
(let* ((libname (if (stringp file)