Questions tagged [filetype-c]
The filetype-c tag has no usage guidance.
36
questions
0
votes
1answer
11 views
Move the caret to proper indentation inside insert mode in C files when using arrow keys
In insert mode, scope indentation is not taken into account if I navigate rows during insert mode. Example:
In such a case, if I would press the up arrow key, Vim would place my caret at the start of ...
1
vote
0answers
37 views
Syntax highlighting in parallel folders [closed]
My syntax highlighting does not work for my C-project, if I use folders in parallel. Consider this file tree:
project
├── include
│ ├── main.h
│ ├── file1.h
│ └── file2.h
└── src
├── main.c
...
1
vote
1answer
36 views
Loading C file overwrites indentation settings in .vimrc [duplicate]
When I open a C file in vim, it seems to think I want 8 spaces worth of indentation, even though I specify my indentation preferences in .vimrc with the below:
set expandtab
set softtabstop=4
set ...
0
votes
0answers
33 views
How to highlight if defined with #define in Vim?
I want to highlight if defined with #define in Vim. For example, if I type #define ZERO 0, highlight ZERO with a different color.
0
votes
1answer
42 views
Preventing the colon from causing indentation to be deleted
When opening a C file, then even with the vanilla setup on my Linux Mint system, if I type identifier at the beginning of an indented line and then ':'
immediately after it, the indentation for that ...
1
vote
1answer
42 views
Vim to highlight functions and user-defined types
I have two scenarios where I want vim to highlight those items. Currently my fix for these are to add the return types directly into the after/syntax/c.vim file, but this gets incredibly tedious. Here ...
0
votes
0answers
22 views
Syntax highlighting for two components of C syntax
What are the following two components that I need to target with syntax highlighting/rules?
The first one is the int (or more generall, any storage class) that I want to colorize. If currently have ...
0
votes
1answer
38 views
How do I make Clang Completer Auto-Complete/Auto Show options
I have recently moved to vim and was looking into specific auto-completion plugins and tools to use for C/C++ (after YCM did not work for me). I found and installed Clang Completer and it works like a ...
0
votes
0answers
96 views
Neovim - Point builtin LSP client for ccls to a compile_commands.json file
I'm using neovim's builtin lsp client for ccls. It requires a JSON compilation database for parsing the codebase (or something, I dunno).
I used to use Bear for generating the compilation database, ...
1
vote
0answers
31 views
automatic popup in vim with clang_complete plugin
I want to use Vim to program in clang (*.c and *.cpp).
At the moment I am trying to use the clang-complete plugin and I like the autocompletion but I have to use the <C-n> or <C-p> ...
3
votes
1answer
93 views
How does ft-c-omni work and how can I make it faster?
As I was studying the various ways of doing completion in Vim 8.0, I came across the very interesting "omni-completion" feature and its 'omnifunc' option, which is specialized as ccomplete#...
1
vote
1answer
37 views
How to tell vim to ignore extern “C” brakets while indenting?
I have the following in my .vimrc to indent the whole file:
nnoremap cu gg=G``
I have a problem using this in source files that have
#ifdef __cplusplus
extern "C"
{
#endif
// code
#ifdef ...
4
votes
3answers
394 views
Is it possible to create a snippet to “expand” struct members to fill?
In the type of c programming that I do day to day, I often have to "fill" struct members in order to pass them to an API. For example:
struct measurement {
double start_time;
double end_time;
double ...
1
vote
0answers
50 views
How to correctly add syntax highlighting to all c typedef [duplicate]
I saw that it's possible to manually add types to highlight, according to this post: https://stackoverflow.com/questions/20149478/how-can-i-teach-vim-about-additional-c-language-types-for-syntax-...
4
votes
1answer
1k views
How to clang-format the current buffer on save?
Whats the best way to clang-format a C/C++/GLSL a buffer on save, that does nothing in the case there is no clang-format file found for a project?
1
vote
0answers
88 views
Using NerdCommenter to comment/uncomment blocks with old-style C comments
I'm using the NerdCommenters leader c<space> to toggle comments on blocks of C code, but when those blocks already contain C comments, they get replaced, by default with [> and <], and ...
2
votes
1answer
77 views
Vim syntax match changes based on function type name keyword
I've written a C code syntax rule to highlight function names in function definitions as such:
This is the syntax rule written in ~/.vim/syntax/c.vim:
syntax match cCustomFunc /\w\+\s\+\zs\w\+(/he=e-...
1
vote
1answer
474 views
ALE + clangtidy + large file = big delay when linting
I am using ALE plugin with clangtidy linter to lint my C code and whenever I save my file and this linter gets activated it takes around 3-4 seconds for it to check for errors. File in question is ...
1
vote
1answer
90 views
Indenting a c file adds spaces before function's type?
Open a c file and then type:
int
main
and then hit:
gg=G
It becomes
int
main
Is this an intended behavior? Is there a way to change this? I prefer it to be retained as is because most ...
7
votes
5answers
2k views
How do you navigate large source files with VIM?
First, I'm not asking about performance. I'm looking for something that will help me, mentally, get into large C source code files that I'm not yes accustomed to. Take for example readelf.c. This file ...
-1
votes
1answer
218 views
Insert C/C++ loops and statements templates automatically [closed]
How do I insert C/C++-type loops and statements templates automatically in Vim?
0
votes
2answers
1k views
Is there a way to open header file in c?
I'm trying to configure vim for programming in C. I currently use YouCompleteMe and Syntastic for programming auto-completion and syntax-checking. But I came up with a problem.
I cannot jump to a ...
2
votes
1answer
351 views
How do I highlight pc-lint comments in C/C++
How do I mimic the behavior of Doxygen comment highlighting for PC-lint comments? Comments are in the following formats:
/*lint ... */
//lint ...
/* LINTLIBRARY */
/* ARGUSED */
/* VARARGS[N] */ <--...
0
votes
1answer
602 views
Folding doesn't work for C/C++
I've been having a ridiculously hard time getting C/C++ code folding to work with set foldmethod=syntax. To debug my issue I've stripped down my vimrc to only this:
set foldmethod=syntax
syntax on ...
0
votes
1answer
322 views
How can I highlight WinAPI functions in C++?
How can I add syntax highlight for windows.h C/C++ apis and types?
All I've found is a tiny winapi syntax file here.
2
votes
2answers
471 views
folding, curly bracket under the function name
I have these two functions
void function_one(){
return;
}
void function_two()
{
return;
}
when I use zM to fold the functions I get
+-- 3 lines: void function_one(){--
void ...
1
vote
0answers
169 views
Why does cindent align statements to closing } in switch case?
I prefer this indentation style for switch cases with local variables:
switch (expr) {
case CONST_BLAH1: {
int decl; // scope local to this case
stmt;
break;
case CONST_BLAH2: ...
7
votes
1answer
4k views
Vim syntax highlighting for custom C types
I want to use syntax highlighting for custom C types. Based on my coding convention, types can occur in the following places:
typedef type1 type2;
(static | extern | register | volatile)? type ...;
...
7
votes
1answer
2k views
Jumping from function definition tag to prototype tag
As far as I understand Vim has a built-in support for tags (ctags in this case)
Now I have a common C source and C header file. The header file has void foo(void); and the source file has void foo(...
2
votes
0answers
255 views
Tools for working with C #ifdef preprocessor directives?
I want to work with a C code with a lot of #ifdef directives. I wonder if there is a program, that will show me, which of these #ifdef's will be left in the code, and which will be cut out by ...
4
votes
1answer
907 views
Indenting c/c++ using lisp indentation style
I want to write c++ code in vim using lisp indentation style (closing curly braces on the same line as last statement) but I can't figure out how to configure indentation to use that style.
Is there ...
3
votes
1answer
425 views
Auto Indent (the = key) of C switch block
For the following switch block:
If I select the switch block and apply the auto format command, the = key, I get the following:
The block is formatted correctly in the first image, but it gets ...
2
votes
3answers
830 views
Color change in the middle of #define [duplicate]
Every time I have a '0' character in a #define preprocessor directive in C, I get a change of color. Neither the font nor color scheme have influence on it. It is starting to annoy me. Does anyone ...
4
votes
1answer
330 views
Customize vim to automatically check function name against its prototype
I wonder if there is any method that I can use to check a function name against its prototype, which may help a lot when I make typo.
For example, I once wrote a function prototype this way:void ...
5
votes
2answers
673 views
Vim `cpp` Syntax highlighter prematurely ends macros mid-word
NOTE: This question is a "manual migration" from here: https://superuser.com/q/875751/199803
My Vim syntax highlighter for ft=cpp is prematurely ending some macros mid-line. For example:
(The ...
12
votes
2answers
2k views
Automatically creating functions out of function prototypes from header files
Intro
When programming in C and C++ you usually split your function prototypes and actual functions into a .h/.hpp and .c/.cpp file. Sadly it's very tedious to transfer the function prototypes from ...