aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/eval.c
Commit message (Collapse)AuthorAge
...
* Merge pull request #953 from splinterofchaos/patch235-exepathJustin M. Keyes2014-09-17
|\ | | | | vim-patch:7.4.235
| * vim-patch:7.4.235Scott Prager2014-09-17
| | | | | | | | | | | | | | Problem: It is not easy to get the full path of a command. Solution: Add the exepath() function. https://code.google.com/p/vim/source/detail?r=5ab2946f7ce560985830fbc3c453bb0f7a01f385
* | vim-patch:7.4.313Damián Silvani2014-09-16
| | | | | | | | | | | | | | Problem: Changing the return value of getpos() causes an error. (Jie Zhu) Solution: Revert getpos() and add getcurpos(). https://code.google.com/p/vim/source/detail?r=332a5c2b2956d9b18d85268a724d01deea27ec83
* | vim-patch:7.4.310Damián Silvani2014-09-16
|/ | | | | | | Problem: getpos()/setpos() don't include curswant. Solution: Add a fifth number when getting/setting the cursor. https://code.google.com/p/vim/source/detail?r=ccac0aa34eeaf46dad4b831461a532fc3fe71096
* Merge pull request #1140 from atwupack/vp-7.4.341Justin M. Keyes2014-09-15
|\ | | | | vim-patch:7.4.341, 7.4.347, 7.4.351, 7.4.358
| * vim-patch:7.4.358André Twupack2014-09-13
| | | | | | | | | | | | | | | | Problem: Sort is not always stable. Solution: Add an index instead of relying on the pointer to remain the same. Idea by Jun Takimoto. https://code.google.com/p/vim/source/detail?r=v7-4-358
| * vim-patch:7.4.351André Twupack2014-09-13
| | | | | | | | | | | | | | Problem: sort() is not stable. Solution: When the items are identical, compare the pointers. https://code.google.com/p/vim/source/detail?r=v7-4-351
| * vim-patch:7.4.341André Twupack2014-09-13
| | | | | | | | | | | | | | Problem: sort() doesn't handle numbers well. Solution: Add an argument to specify sorting on numbers. (Christian Brabandt) https://code.google.com/p/vim/source/detail?r=adc4a84f72eb44dae657af713922a6e2c1f64ae3
* | eval.c: Rename has('neovim') feature to has('nvim')Thiago de Arruda2014-09-15
| | | | | | | | To follow the convention of 'nvim' for technical references
* | Merge pull request #1169 from splinterofchaos/arglistidJustin M. Keyes2014-09-15
|\ \ | | | | | | vim-patch:7.4.312
| * | vim-patch:7.4.312Scott Prager2014-09-13
| |/ | | | | | | | | | | | | Problem: Cannot figure out what argument list is being used for a window. Solution: Add the arglistid() function. (Marcin Szamotulski) https://code.google.com/p/vim/source/detail?r=v7-4-312
* | eval.c: Rename msgpack-rpc functions for consistencyThiago de Arruda2014-09-13
| |
* | eval.c: Rename jobwrite to jobsendThiago de Arruda2014-09-13
|/
* api: Implement `vim_report_error` functionThiago de Arruda2014-09-12
| | | | | This function is used to report errors caused by remote functions called by channel_send_call
* api/msgpack-rpc: Implement `channel_close` and expose to vimscriptThiago de Arruda2014-09-12
| | | | Simple function for closing a channel by id
* api/msgpack-rpc: Expose channel_from_job to vimscript as api_spawnThiago de Arruda2014-09-12
|
* api/msgpack-rpc: Refactor msgpack_rpc_helpers.{c,h}Thiago de Arruda2014-09-12
| | | | | | - Move helpers that are specific to API types to api/private/helpers.{c,h} - Include headers with generated declarations - Delete unused macros
* Merge pull request #1149 from splinterofchaos/vim-patch-7.4.278Justin M. Keyes2014-09-09
|\ | | | | vim-patch:7.4.278
| * vim-patch:7.4.278Scott Prager2014-09-09
| | | | | | | | | | | | | | Problem: list_remove() conflicts with function defined in Sun header file. Solution: Rename the function. (Richard Palo) https://code.google.com/p/vim/source/detail?r=v7-4-278
* | Additional FOR_ALL_WINDOWS usageWayne Rowcliffe2014-09-08
|/
* Merge pull request #1107 from fmoralesc/matchaddposJustin M. Keyes2014-09-05
|\ | | | | Add matchaddpos()-related vim patches. [vim-patch: 7.4.330, 7.4.334, 7.4.343, 7.4.344, 7.4.362]
| * vim-patch: 7.4.330Felipe Morales2014-09-04
| | | | | | | | | | | | | | | | | | | | Problem: Using a regexp pattern to highlight a specific position can be slow. Solution: Add matchaddpos() to highlight specific positions efficiently. (Alexey Radkov.) https://code.google.com/p/vim/source/detail?r=f9fa2e506b9f07549cd91074835c5c553db7b3a7
* | fileinfo: change returntype of os_fileinfo_sizeStefan Hoffmann2014-08-31
| | | | | | | | off_t -> uint64_t
* | fileinfo: rename os_get_file_info{,_link,_fd}Stefan Hoffmann2014-08-31
| |
* | fileinfo: implement os_fileinfo_sizeStefan Hoffmann2014-08-31
| | | | | | | | this replaces os_get_file_size and file_info.stat.st_size
* | msgpack-rpc: Always use arrays when sending events or callsThiago de Arruda2014-08-29
|/ | | | | | This is required by the msgpack-RPC specification. Also, the send_call/send_event functions were refactored to accept a variable number of arguments
* Merge pull request #1024 from war1025/dev/for_all_buffersJustin M. Keyes2014-08-19
|\ | | | | Add FOR_ALL_BUFFERS helper
| * FOR_ALL_BUFFERS use locally declared buffer pointerWayne Rowcliffe2014-08-17
| |
| * Add FOR_ALL_BUFFERS helperWayne Rowcliffe2014-08-02
| |
* | Merge pull request #1019 from splinterofchaos/globpathJustin M. Keyes2014-08-18
|\ \ | | | | | | vim-patch:7.4.279
| * | vim-patch:7.4.279Scott Prager2014-08-04
| |/ | | | | | | | | | | | | | | Problem: globpath() returns a string, making it difficult to get a list of matches. (Greg Novack) Solution: Add an optional argument like with glob(). (Adnan Zafar) https://code.google.com/p/vim/source/detail?r=8e9db1f27a0063df023cc05a760fce73255dad24
* | vim-patch:7.4.327 #1010André Twupack2014-08-13
| | | | | | | | | | | | | | Problem: When 'verbose' is set to display the return value of a function, may get E724 repeatedly. Solution: Do not give an error for verbose messages. Abort conversion to string after an error. https://code.google.com/p/vim/source/detail?r=99d8f2d72dcd4b850de81998cc9b1120c8165762
* | vim-patch:7.4.323 #967André Twupack2014-08-07
| | | | | | | | | | | | | | Problem: Substitute() with zero width pattern breaks multi-byte character. Solution: Take multi-byte character size into account. (Yukihiro Nakadaira) https://code.google.com/p/vim/source/detail?r=238f5027830cad22e17a970483af9b160869cdf3
* | Refactor vim_feedkeys and f_feedkeysRui Abreu Ferreira2014-08-07
| | | | | | | | | | | | | | | | - To clean up the mix between feedkeys and replace_termcodes the vim_feedkeys API function now does the same thing as the vimscript feedkeys() function - The original f_feedkeys() function now calls the vim_feedkeys() function from the API
* | Remove FEAT_TAG_ANYWHITEPavel Platto2014-08-02
|/ | | | | | This feature allow to use any white space characters instead of one <TAB> in tag files. It is disabled in vanilla Vim's default build configuration. Exuberant ctags use format with exactly one TAB.
* eval: re-add has('mac') and has('macunix') #976Nicolas Hillegeer2014-07-30
| | | | | They were removed but they can be handy to separate some things to do at startup in a .vimrc for example.
* eval: re-remove USE_CR #1002Nicolas Hillegeer2014-07-30
| | | | | It was already removed in 01ca460 and I erroneously introduced it again in PR #978.
* Remove FEAT_MOUSE_JSBFredrik Fornwall2014-07-29
| | | | This is never built and references some obscure jsb terminal
* Remove unused arg 'defer' in 'job_start' #1000oni-link2014-07-29
| | | | | | | | | * With the changes in commit "events: Refactor how event deferral is handled" (2e4ea29d2c7b62eb8baf1c41cd43433e085dda0) the function argument 'defer' of 'job_start' and member variable 'defer' of 'struct job' can be removed. * Update/Fix the documentation for function 'job_start'.
* eval: reimplement f_system() on top of os_system()Nicolas Hillegeer2014-07-27
| | | | | | This evades the tempfile problem (unless of course one manually adds redirects to the shell commandline, which some plugins seem to do, e.g.: vim-easytags).
* viml: re-add sha256() functionNicolas Hillegeer2014-07-21
| | | | Was removed in #699 but actually doesn't have anything to do with security.
* startuptime: always enable startuptimeNicolas Hillegeer2014-07-20
| | | | Removes the STARTUPTIME define.
* provider: Add support for python commands/functionsThiago de Arruda2014-07-17
| | | | | | | | This uses the provider/scripting infrastructure to reintroduce python support through the msgpack-rpc API. A new 'initpython' option was added, and it must be set to a command that will bootstrap the python provider the first time it's needed.
* provider: Add support functions for calling external interpretersThiago de Arruda2014-07-17
| | | | | | This uses the provider module infrastructure to implement common code for vimscript commands/functions that need to communicate with external interpreters, eg: pydo, rubydo, pyfile, rubyfile, etc.
* provider: New module used to expose extension points for core servicesThiago de Arruda2014-07-17
| | | | | | | | | | | | | | | | | Introducing the concept of providers: co-processes that talk with the editor through the remote API and provide implementation for one or more core services. The `provider_register` function and it's API wrapper can be used by channels that want to self-register as a service provider. Some old builtin vim features will be re-implemented as providers. The `provider_has_feature` function is used to check if a provider implementing a certain feature is available(It will be called by the `has` vimscript function to check for features in a vim-compatible way) This implements the provider module without exposing any extension points, which will be done in future commits.
* job: No longer free the job data. It's now done by the exit callbackThiago de Arruda2014-07-17
|
* wstream: Pass WBuffer refcount as a constructor parameterThiago de Arruda2014-07-17
| | | | | | This is required to handle broadcasting when the first write fails. Ref: https://github.com/tarruda/neovim/commit/11916b6b595421ce2ece10f7aa40757cc4937c0c#commitcomment-6792287
* profiling: implement on top of os_hrtime()Nicolas Hillegeer2014-07-16
| | | | | | | | | | | | | | | | | | | | | | | | | | Should be better than gettimeofday() since libuv uses higher resolution clocks on most UNIX platforms. Libuv also tries to use monotonic clocks, kernel bugs notwithstanding, which is another win over gettimeofday(). Necessary for Windows, which doesn't have gettimeofday(). In vanilla vim, Windows uses QueryPerformanceCounter, which is the correct primitive for this sort of things, but that was removed when slimming up the codebase. Libuv uses QueryPerformanceCounter to implement uv_hrtime() on Windows so the behaviour of vim profiling on Windows should now be the same. The behaviour on Linux should be different (better) though, libuv uses more accurate primitives than gettimeofday(). Other misc. changes: - Added function attributes where relevant (const, pure, ...) - Convert functions to receive scalars: Now that proftime_T is always a (uint64_t) scalar (and not a struct), it's clearer to convert the functions to receive it as such instead of a pointer to a scalar. - Extract profiling funcs to profile.c: make everything clearer and reduces the size of the "catch-all" ex_cmds2.c - Add profile.{c,h} to clint and -Wconv: - Don't use sprintf, use snprintf - Don't use long, use int16_t/int32_t/...
* Extract `tempfile` module from fileioPavel Platto2014-07-14
| | | | | | | Though this module is relatively small it has very clear boundaries. The last argument for extracting `tempfile` was the errors which I got when I was writing unittests for it: `cimport './src/nvim/fileio.h'` does not work for some reason.
* Refactor vim_tempnamePavel Platto2014-07-14
| | | | | | | | | - temp_count is uint32_t now instead of long because it supposed to be at most 999999999 (comment on line 5227) temporary files. The most probably it was a long for compatibility with systems where int is 16-bit. - Use "nvim" as prefix for temp folder name instead of "v" - Remove unused parameter from vim_tempname