Code: (lambda () (c-ts-mode) (setq-local indent-tabs-mode nil) (newline) (indent-for-tab-command)) Point-Char: | Name: Indents inside #if preproc =-= static void free_glyph_pool (struct glyph_pool *pool) { if (pool) { #if defined GLYPH_DEBUG| #endif } } =-= static void free_glyph_pool (struct glyph_pool *pool) { if (pool) { #if defined GLYPH_DEBUG | #endif } } =-=-= Name: Indents to 0 if #if preproc at root =-= #if 0| /* */ static void =-= #if 0 | /* */ static void =-=-= Code: (lambda () (c-ts-mode) (setq-local indent-tabs-mode nil) (setq-local c-ts-mode-indent-offset 2) (c-ts-mode-set-style 'gnu) (indent-region (point-min) (point-max))) Name: Prev-Sibling When Prev-Sibling is Preproc =-= static void free_glyph_pool (struct glyph_pool *pool) { if (pool) { #if defined GLYPH_DEBUG int c = 1; #endif int check_this = 3; #ifdef stuff int c = 1; #elif defined stuff int e = 5; #else int d = 11; int f = 11; #endif int check_this = 3; } } =-=-=