diff options
| author | Famiu Haque <famiuhaque@proton.me> | 2024-11-23 14:22:06 +0600 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-11-23 08:22:06 +0000 |
| commit | 8516c2dc1f301c439695629fff771227dbe00d30 (patch) | |
| tree | 5e052ad234f99cdbfce89b03ba71796a8cd274ef /src/nvim/bufwrite.c | |
| parent | 9a681ad09e2add96d47bf3f39cca8029f3bf09df (diff) | |
| download | rneovim-8516c2dc1f301c439695629fff771227dbe00d30.tar.gz rneovim-8516c2dc1f301c439695629fff771227dbe00d30.tar.bz2 rneovim-8516c2dc1f301c439695629fff771227dbe00d30.zip | |
refactor(options): autogenerate valid values and flag enums for options (#31089)
Problem: Option metadata like list of valid values for an option and
option flags are not listed in the `options.lua` file and are instead
manually defined in C, which means option metadata is split between
several places.
Solution: Put metadata such as list of valid values for an option and
option flags in `options.lua`, and autogenerate the corresponding C
variables and enums.
Supersedes #28659
Co-authored-by: glepnir <glephunter@gmail.com>
Diffstat (limited to 'src/nvim/bufwrite.c')
| -rw-r--r-- | src/nvim/bufwrite.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/nvim/bufwrite.c b/src/nvim/bufwrite.c index 5f830b4219..95639bed70 100644 --- a/src/nvim/bufwrite.c +++ b/src/nvim/bufwrite.c @@ -725,9 +725,9 @@ static int buf_write_make_backup(char *fname, bool append, FileInfo *file_info_o FileInfo file_info; const bool no_prepend_dot = false; - if ((bkc & BKC_YES) || append) { // "yes" + if ((bkc & kOptBkcFlagYes) || append) { // "yes" *backup_copyp = true; - } else if ((bkc & BKC_AUTO)) { // "auto" + } else if ((bkc & kOptBkcFlagAuto)) { // "auto" // Don't rename the file when: // - it's a hard link // - it's a symbolic link @@ -773,19 +773,19 @@ static int buf_write_make_backup(char *fname, bool append, FileInfo *file_info_o } // Break symlinks and/or hardlinks if we've been asked to. - if ((bkc & BKC_BREAKSYMLINK) || (bkc & BKC_BREAKHARDLINK)) { + if ((bkc & kOptBkcFlagBreaksymlink) || (bkc & kOptBkcFlagBreakhardlink)) { #ifdef UNIX bool file_info_link_ok = os_fileinfo_link(fname, &file_info); // Symlinks. - if ((bkc & BKC_BREAKSYMLINK) + if ((bkc & kOptBkcFlagBreaksymlink) && file_info_link_ok && !os_fileinfo_id_equal(&file_info, file_info_old)) { *backup_copyp = false; } // Hardlinks. - if ((bkc & BKC_BREAKHARDLINK) + if ((bkc & kOptBkcFlagBreakhardlink) && os_fileinfo_hardlinks(file_info_old) > 1 && (!file_info_link_ok || os_fileinfo_id_equal(&file_info, file_info_old))) { |