aboutsummaryrefslogtreecommitdiff
path: root/src/misc1.c
Commit message (Collapse)AuthorAge
* Move expand_wildcards{,_eval} from misc1.cJohn Schmidt2014-04-01
|
* Refactor SHELL_* defines into enum typedefThiago de Arruda2014-03-31
| | | | | | The SHELL_* defines are the bitflags that can be passed to `mch_call_shell`. The enum is defined in 'os/shell.h', where all shell-related functions will eventually be defined.
* Make `extra_shell_arg` a `mch_call_shell` parameterThiago de Arruda2014-03-31
|
* xrealloc(): similar to xmalloc()Felipe Oliveira Carvalho2014-03-31
| | | | | Replaced all calls to realloc by xrealloc. All `== NULL` tests can be removed and the code within `!= NULL` tests can be unwrapped.
* Extract path.c from misc1.cJohn Schmidt2014-03-29
|
* Rename mch_* functions to os_* in os module.Thomas Wienecke2014-03-27
|
* Use realloc instead of vim_reallocFelipe Oliveira Carvalho2014-03-26
|
* Use memmove instead of mch_memmoveFelipe Oliveira Carvalho2014-03-26
|
* adapt to the style guildelinesPetter Wahlman2014-03-19
| | | | | semi-automated harvest of low hanging fruit: change the unorthodox use of whitespace.
* Revive vim_fname (-> os_file_exists); fix misuse of mch_getperm.Thomas Wienecke2014-03-15
| | | | | | * Move vim_fname from misc1 to os/fs:os_file_exists. * Add unit tests for os_file_exists. * Replace misuse of mch_getperm with os_file_exists.
* Moved more functions from misc1.c to indent.cJohn2014-03-15
|
* Extract indent_c.c from misc1.cJohn2014-03-14
|
* refactored part of expand_env_esc() into mch_get_user_directory()Stefan Hoffmann2014-03-13
|
* refactored logic from init_users() into mch_get_usernames()Stefan Hoffmann2014-03-13
|
* cleanup environment variable handling + unit testsStefan Hoffmann2014-03-06
| | | | | | | | * removed a putenv() implementation which isn't needed anymore * mch_getenv() and mch_setenv() are now functions in src/os/env.c * removes direct calls to getenv() and setenv() outside of src/os/env.c * refactored the logic of get_env_name into mch_getenvname_at_index * added unittests for the functions in os/env.c
* Fix style issues.Thomas Wienecke2014-03-06
| | | | | | | | * Rename mch_full_name to mch_get_absolute_path. * Rename mch_is_full_name to mch_is_absolute_path. * Add a lot of missing parentheses. * Remove yoda-conditions for consistency. * Remove spaces in function declaration.
* Rename and refactor mch_FullName.Thomas Wienecke2014-03-04
| | | | | | | | | * Rename mch_FullName to mch_full_name to match the style guide. * Add mch_full_dir_name, which saves the absolute path of a given directory relative to cwd into a given buffer. * Add function append_path, which glues together two given paths with a slash. * Adapt moonscript coding style to the tests.
* Move some of misc1.c to indent.c.Gaelan Steele2014-03-03
| | | | My little contribution to #209.
* Remove __ARGS macro. Close #205Nicolas Pierron2014-03-02
| | | | | | | | | This is a squash of all commits sent to #81. - Remove unused undef of __ARGS. - Fix mch_rename declaration. - Follow changes related to moved & extracted files. - Properly indent function declarations of getchar.h and quickfix.c.
* Use _NSGetEnviron on Mac OS X to gain access to environ.John Szakmeister2014-02-28
| | | | | | | | When building nvim as a shared library for testing, environ is not exposed. In order to gain access to the environment variables, you must get a pointer to them from _NSGetEnviron(). It appears that this may affect the FreeBSD platform too.
* Extract garray.c from misc2.cFelipe Oliveira Carvalho2014-02-28
| | | | Start to split misc2.c in many other files (see #209).
* Removes 'proto' dirscott-linder2014-02-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | See #137 for the issue. Every header in the proto directory was: * Given include guards in the form #ifndef NEOVIM_FILENAME_H #define NEOVIM_FILENAME_H ... #endif /* NEOVIM_FILENAM_H */ * Renamed from *.pro -> *.h * Moved from src/proto/ to src/ This would have caused conficts with some existing headers in src/; rather than merge these conflicts now (which is a whole other can of worms involving multiple and conditional inclusion), any header in src/ with a conflicting name was renamed from *.h -> *_defs.h (which may or may not actually describe its purpose, the change is purely a namespacing issue). Once all of these changes were made a script was developed to determine what #includes needed to be added to each source file to describe its dependencies and allow it to compile; because the script is so short and I'll just list it here: #! /bin/bash cd $(dirname $0) # Scrapes `make` output for provided error messages and outputs #includes # needed to resolve them. # $1 : part of the clang error message between filename and identifier list_missing_includes() { for file_missing_pair in $(CC=clang make 2>&1 >/dev/null | sed -n "s/\/\(.*\.[hc]\).*$1.*'\(.*\)'.*/\1:\2/p"); do fields=(${file_missing_pair//:/ }) source_file=${fields[0]} missing_func=${fields[1]} # Try to find the declaration of the missing function. echo $(basename $source_file) \ \#include \"$(grep -r "\b$missing_func __ARGS" | sed -n "s/.*\/\(.*\)\:.*/\1/p")\" # Remove duplicates done | sort | uniq } echo "Finding missing function prototypes..." list_missing_includes "implicit declaration of function" echo "Finding missing identifier declarations..." list_missing_includes "use of undeclared identifier" Each list of required headers was added by hand in the following format: #include "vim.h" #include "*_defs.h" #include "filename.h" /* All other includes in same module here, in alphabetical order. */ /* All includes from other modules (e.g. "os/*.h") here in alphabetical * order. */
* Create new OS moduleThiago de Arruda2014-02-24
| | | | | This module will contain all functions that perform OS calls such as IO, filesystem access, etc.
* Convert function declarations from K&R to ANSI style.scott-linder2014-02-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | cproto (http://invisible-island.net/cproto/) was used to do the bulk of the work in batch; even the most recent version had some issues with typedef'd parameters; a quick "patch" was to modify `lex.l` to explicitly include all vim typedefs as known types. One example from `vim.h` is typedef unsigned char char_u; which was added in `lex.l` as <INITIAL>char_u { save_text_offset(); return T_CHAR; } Even with these changes there were some problems: * Two files (`mbyte.c` and `os_unix.c`) were not cleanly converted. * Any function with the `UNUSED` macro in its parameter list was not converted. Rather than spend more time fixing the automated approach, the two files `mbyte.c` and `os_unix.c` were converted by hand. The `UNUSED` macros were compiler specific, and the alternative, generic version would require a different syntax, so in order to simplify the conversion all uses of `UNUSED` were stripped, and then the sources were run back through cproto. It is planned to reconsider each use of `UNUSED` manually using a new macro definition.
* Import vim from changeset v5628:c9cad40b4181Thiago de Arruda2014-01-31
- Cleanup source tree, leaving only files necessary for compilation/testing - Process files through unifdef to remove tons of FEAT_* macros - Process files through uncrustify to normalize source code formatting. - Port the build system to cmake