Commit Graph

154 Commits (master)

Author SHA1 Message Date
Delyan Angelov d7049ae2da
os: deprecate os.exec (returning ?os.Result), in favour of os.execute, which returns os.Result (#8974) 2021-03-08 20:52:13 +02:00
joe-conigliaro 2d73411396
checker: define missing C fn args & check C & JS args (#8770) 2021-03-05 17:41:11 +03:00
James Addison a64d9b3e12
termui: add show_cursor() and hide_cursor() (#9087) 2021-03-04 12:31:26 +02:00
spaceface b712af56fd
all: bring back `panic(err.msg)` -> `panic(err)` (#9022) 2021-03-01 00:18:14 +01:00
spaceface d63b7bc35a
all: update repo to use the new error handling syntax (#8950) 2021-02-28 23:20:21 +03:00
Delyan Angelov 20f9bdfa8e
os: fixes for os.input(), os.get_raw_stdin(), os.get_raw_line() in case of stdin EOF 2021-02-27 20:02:36 +02:00
Alexander Medvednikov 3a2d696fac time: time.wait() => time.sleep() 2021-02-27 20:41:06 +03:00
Nick Treleaven 23f231ee61
builtin: tag array methods unsafe: *_many, grow_len, pointers (#8983) 2021-02-26 22:55:09 +01:00
Delyan Angelov 639061be6c
examples: fix left/right arrows in examples/term.ui/text_editor.v 2021-02-25 21:01:27 +02:00
Delyan Angelov c37daba41d
ci: fix the remaining obsolete reference to time.sleep and time.usleep 2021-02-22 09:12:23 +02:00
zakuro ac4791045f
time: consolidate the different sleep functions into time.wait(Duration) (#8853) 2021-02-21 17:05:03 +02:00
spaceface 260f677469
term.ui: use the new `[flag]` enums (#8881) 2021-02-21 16:07:49 +02:00
Delyan Angelov bf6e9ff95a
Revert "parser: make duplicated functions an error (#8792)"
This reverts commit 21bf8fe14e.
2021-02-18 09:02:56 +02:00
zakuro 21bf8fe14e
parser: make duplicated functions an error (#8792) 2021-02-17 20:50:10 +01:00
Nick Treleaven ea803113c3
checker: check `unsafe` V function calls (#8752) 2021-02-14 19:31:42 +01:00
Swastik Baranwal 6de78ecb59
term: implement term.clear() for windows (#8650) 2021-02-09 14:25:31 +02:00
Lukas Neubert 473cd1d416
fmt: single line ternary return (#8605) 2021-02-08 00:28:46 +01:00
Lukas Neubert 58b3a30b47
docs/readmes: format almost all remaining code blocks (#8590) 2021-02-05 19:50:28 +02:00
shadowninja55 fccd4f98d5
fixed offset (#8376) 2021-01-27 19:39:53 +02:00
spaceface e233911a7b
term.ui: native Windows console implementation (#8359) 2021-01-27 13:52:39 +01:00
Delyan Angelov dd96852515
ci: fix compilation of term.ui examples on windows 2021-01-26 19:26:05 +02:00
Delyan Angelov e5a84719ca
all: require calling `optfn() ?` / `optfn() or {...}` for `fn optfn() ? {}` 2021-01-26 16:43:17 +02:00
Lukas Neubert 8b61891348
fmt: smarter if condition wrapping (#8201) 2021-01-23 10:33:22 +02:00
Daniel Däschle dbf84520f1
all: update assoc syntax (#8274) 2021-01-22 23:24:48 +01:00
Lukas Neubert ac2c3847af
all: update copyright to 2019-2021 (#8029) 2021-01-18 13:20:06 +01:00
Delyan Angelov 3ee78dc961
term: add term.colorize/2, use it in the tests. Support ConEmuANSI = ON too. 2021-01-17 19:09:29 +02:00
yuyi a2efb5319d
all: change `[1,2,3]!!` to `[1,2,3]!` (#8101) 2021-01-14 03:51:13 +01:00
Daniel Däschle a22982d662
tests: colorize failing tests, improve layout (#8066) 2021-01-13 11:07:12 +02:00
yuyi a1c67232d0
checker: fix duplicate variable name (fix #265) (#7982) 2021-01-10 21:41:29 +01:00
cbracketdash 0210d1bf24
vrepl, term: return cursor to the top-left corner in vrepl after `clear` (#7600) 2020-12-27 13:43:36 +02:00
Delyan Angelov 3064fff95b
vlib: prepare modules `hash` and `term` for -Wimpure-v 2020-12-15 09:11:17 +02:00
Nick Treleaven 63557d0d02
checker: disallow op= and infix on a voidptr (#7175) 2020-12-07 22:43:38 +02:00
Lukas Neubert 8adb1acf31
check-md: verify code example formatting (#7143) 2020-12-05 22:54:41 +01:00
Larpon 1192dfdc8a
term.ui: document functions (#6979) 2020-11-29 08:32:04 +02:00
Delyan Angelov 7cd9530006 docs: fix most of the examples (ensure they at least have a valid syntax) 2020-11-27 13:03:32 +02:00
spaceface777 6563535a3d
term.ui: simplify/fix the truecolor feature test (#6963) 2020-11-26 23:52:20 +01:00
spaceface777 e03ae19372
term.ui: approximate colors into ansi if rgb isn't supported (#6951) 2020-11-26 00:28:57 +01:00
Lukas Neubert df4165c7ee
docs_ci: check all md files except thirdparty (#6855) 2020-11-18 18:28:28 +01:00
Larpon fdc0cd4c03
term.ui: add dashed lines and rectangles (#6848) 2020-11-17 15:08:35 +01:00
spaceface777 ac8a2ff12d
term.ui: feature-detect the SU spec (#6844) 2020-11-16 14:48:08 +02:00
spaceface777 1ead130eed
term.ui: render to the alternate buffer (#6832) 2020-11-14 21:05:22 +02:00
Carlos Esquerdo Bernat 827fb62c29
examples/text_editor: edit multiple files (#6827) 2020-11-14 19:39:59 +02:00
spaceface777 6b47c61fe4
term.ui: handle middle mouse button events and modifier keys (#6821) 2020-11-14 09:14:54 +02:00
spaceface777 c315218ed1
term.ui: allow setting the terminal title (#6809) 2020-11-13 15:30:47 +02:00
Delyan Angelov a3404a38c6 term_drawing.v: support arrows, 1, 2 and space 2020-11-13 13:08:28 +02:00
Delyan Angelov f6e54dc027 term.ui: improve Ctrl-Z + fg handling 2020-11-13 10:27:53 +02:00
spaceface777 24f743ee12
term: add `term.ui` module (part 2) (#6798) 2020-11-12 12:12:51 +01:00
Delyan Angelov f3732b730a term: replace assert with panic to enable build-module for it too 2020-10-21 08:49:07 +03:00
Alexander Medvednikov 7da1afa140 all: switch to the new fn arg syntax everywhere; add lots of vfmt -verify tests 2020-10-15 12:32:28 +02:00
bpryer 3f7970db52
term: add get_cursor_position and set_terminal_title (#6279)
* added functions

added:
  - get_cursor_position()
  - set_terminal_title(title string)

* implement term.get_cursor_position and term.set_terminal_title on unix

* Cleanup

* make x,y fields of term.Coord mutable

* fix vrepl compilation

* use more descriptive var names in term_test.v

* do not change the current terminal title in dumb terminals; do not test term.set_terminal_title outside of CI

* unix: in term.set_terminal_title, return true even for dumb terminals

Co-authored-by: Brent Pryer <brent@pryermachine.com>
Co-authored-by: Delyan Angelov <delian66@gmail.com>
2020-09-08 22:00:10 +03:00
Irabaruta Freeman fa11e124dd
term: add documentation (#6097) 2020-08-17 20:16:18 +02:00
Delyan Angelov 346cc5ca2c term: fix panic in term.header, when cols,rows from get_terminal_size are < 2 2020-07-24 08:34:39 +03:00
pancake b7bdb97f7d
term: fix crash in `header` when divider.len < 2 (#5956) 2020-07-23 18:54:29 +02:00
Swastik Baranwal 72b09d4794
term: add clear 2020-06-19 17:15:41 +02:00
Alexander Medvednikov ed58192e4c v orm: select 2020-06-17 00:59:37 +02:00
yuyi dda875a9c8
all: unify const names to snake_case 2020-05-22 17:36:09 +02:00
Enzo Baldisserri f44a40eee0
checker: check incorrect names 2020-05-16 16:12:23 +02:00
Delyan Angelov 4b347ff148 v self: force the subprocess to show colors 2020-05-08 19:04:24 +03:00
lutherwenxu dc4db87be3
vlib: use new filename format 2020-04-11 19:51:32 +02:00
Delyan Angelov e10290eb8e tests: make the SKIP and FAIL labels more distinctive 2020-04-08 18:42:05 +03:00
Daniel Däschle a61654009f
tests: change skip color to yellow instead of red 2020-04-08 16:52:40 +02:00
Alexey 72df30050d
term: fix `get_terminal_size` on Windows 2020-04-04 11:56:43 +02:00
Alexander Medvednikov 1cfe44d9c6 fix windows build 2020-04-02 01:15:00 +02:00
Delyan Angelov b62035e3d0
solaris & termux: fix both, using the more portable termios.h 2020-03-31 12:46:46 +02:00
Delyan Angelov 7785583b34
android: fix termux build 2020-03-29 20:54:21 +02:00
Major Taylor 5c9cbae10d
term: fix divide by 0 error on empty delimiter 2020-03-23 20:05:08 +01:00
Alexander Medvednikov b4561fa814 Revert "term: make compilable with v2 on windows" 2020-03-20 21:15:45 +01:00
Alexander Medvednikov 0f1f724a91 term: make compilable with v2 on windows 2020-03-20 21:12:37 +01:00
Alexander Medvednikov 3dc3b11435 parser: $if blocks for headers 2020-03-19 07:59:01 +01:00
fantassin 5824d28a03
term: Solaris headers 2020-03-19 07:07:43 +01:00
joe-conigliaro 94537c5901
compiler: scope type alias to module 2020-02-09 15:40:31 +01:00
Alexander Medvednikov ea9961a8fb fix term_windows.v 2020-02-07 23:16:34 +01:00
Don Alfons Nisnoni 36e636743b
term: header() 2020-02-07 18:46:20 +01:00
joe-conigliaro 7f709c3285
update copyright years 2020-02-03 05:00:36 +01:00
Alexey 5c598a3085
term: reorganize the module 2020-01-29 05:12:12 +01:00
Alexey 5c00851b44
term: implement `get_terminal_size` for Windows 2020-01-28 23:44:57 +01:00
Delyan Angelov 9ac0c54eb0 term: fix too long h_divider lines in CI 2020-01-28 20:25:17 +01:00
Mateo Pidal 78c96fe989 term: get_terminal_size() 2020-01-28 05:18:19 +01:00
Delyan Angelov cf37028a52 test: use 'stty size' for vtest --- line instead of 'tput cols' 2019-12-23 13:23:53 +03:00
Alexander Medvednikov 6210984c97 run vfmt 2019-12-20 02:09:56 +03:00
vitalyster 8dbeab9a7b make V work on Windows 7 2019-11-06 23:04:40 +03:00
Alexander Medvednikov 27e254c738 now bring _windows.v back 2019-10-23 12:54:45 +03:00
Alexander Medvednikov 8021a01365 rename windows files for now 2019-10-23 12:37:42 +03:00
Alexander Medvednikov 5ef4b2064f windows: _win.v => windows.v 2019-10-23 12:21:33 +03:00
vitalyster e64609387d term: colors on Windows console
* isConsole moved to builtin is_atty function
* Windows console initialization moved to builtin.init
2019-10-10 20:08:36 +03:00
Alexander Medvednikov 2411b8d1e7 module cache fixes; do not allow function names starting with _ 2019-10-10 00:44:26 +03:00
Delyan Angelov ac5241b5bd compiler: implement -stats option for running a _test.v file
* Draft implementation of `v -stats file_test.v` .

* compiler: call stuff in vlib/benchmark/tests/always_imported.v, when doing `v -stats file_test.v`

* Nicer looking output from 'v -stats file_test.v' .

* Tweak colors and layout of -stats file_test.v .

* Fix a hardcoded path in compiler/main.v .

* Show colorized OK/FAIL for the examples in 'v test v' too.

* Add some comments about the purpose of the methods inside vlib/benchmark/tests/always_imported.v .

* when fails are 0, do not colorize their number at all.
2019-10-07 08:51:26 +03:00
Delyan Angelov e72fe25224 compiler: more precise 'declared and not used' error positioning
* compiler: extract and cleanup error handling functionality into its own file compiler/compile_errors.v

* compiler: implement p.error_with_token_index and p.warn_with_token_index and use them. Fix tests.

* tools/performance_compare: add a 'Source lines in compiler/' line

* MSVC does not have STDOUT_FILENO nor STDERR_FILENO ...
2019-09-29 20:37:39 +03:00
Delyan Angelov 8b8cd13929 parser: add some infrastructure for more specific errors
* compiler: change s.line_nr in just one place, so that s.last_nl_pos will be updated in tandem too.

* Cleanup spurious spaces.

* Store ScannerPos info inside the cached tokens.

Use the stored information when errors are encountered.

* Fix #2079 ( cannot use type...in assignment ).

* do not store scannerpos per each token, instead rescan the source once on error to get the position.

* compiler: implement highlighting for errors. Use only line/col info stored in the cached tokens.

* fixing building on windows

* Split can_show_color to _nix and _win files.
2019-09-29 04:33:23 +03:00
joe-conigliaro 23c84516e2 compiler: error on unused imports 2019-09-23 13:42:20 +03:00
Vitor Oliveira 1a099c9284 vlib: fix several typos 2019-09-14 23:54:14 +03:00
Alexander Medvednikov 1c6d51f271 remove u8 and i32 from tests and examples 2019-09-02 15:02:25 +03:00
SewerynKaminski c8da79d785 Fix terminal goto control sequence building 2019-08-22 20:10:54 +03:00
Alexander Medvednikov 0243f9b0e9 term: remove enable_term_color_win() 2019-07-31 23:19:27 +02:00
Felix Scholz 12ecd0f3dc term: allow more colors to be used (bright styled ansi, rgb and hex)
* introduce bright versions of standard ansi colors

* allow developer to colorize messages with rgb

* allow developer to colorize messages using hex

* fix broken formatting
2019-07-31 19:22:38 +02:00
vitalyster 37a0e6ebef Travis: run tests for Windows (#1403) 2019-07-31 19:01:52 +02:00
Joe Conigliaro cfe581e2ab fix term 2019-07-30 03:15:46 +02:00
joe-conigliaro 45029f8c86 term: move enable_term_color_win() to colors_win.v 2019-07-29 04:44:21 +02:00
joe-conigliaro c7edeb00a8 term: add better error detection on Windows 2019-07-28 17:19:03 +02:00
Alexander Medvednikov c35adbea91 vfmt fixes 2019-07-17 21:00:39 +02:00