Commit Graph

706 Commits

Author SHA1 Message Date
Andy Williams 0483196de4 clang: Update clang command database to support cmake too 2017-02-19 22:25:12 +00:00
Andy Williams 32b6169e0d Centralise some more path handling methods 2017-02-19 16:22:53 +00:00
Andy Williams 784c6c4917 clang: re-scan after save to get latest changes.
Slightly behind the cursor but better for the cache. Removes need to pass unsaved file
2017-02-18 23:06:06 +00:00
Andy Williams b5c061bc4d build: Split make from cmake so we can specialise better 2017-02-18 22:19:17 +00:00
Andy Williams 7735a90cc0 clang: Generate compile_commands.json using cmake builtin 2017-02-18 21:58:56 +00:00
Andy Williams f89f1bb0c6 clang: Add support for compile command databases
Relies on having bear (https://github.com/rizsotto/Bear).
Also refactor clang code to only have 1 instance per tab.
2017-02-17 22:49:27 +00:00
Andy Williams 25d5c6b7e6 cmdline: Add a little user feedback 2017-02-10 00:13:55 +00:00
Andy Williams a053bb9757 build: add trivial python project support 2017-02-07 00:05:06 +00:00
Andy Williams 011746c6cf Update TODO based on latest EFL 2017-02-02 18:32:55 +00:00
Andy Williams 13c7c1fcab syntax: Still ask clang to highlight preprocessor/macros 2017-01-31 20:09:02 +00:00
Andy Williams fd6584f8b6 filepanel: remove unneeded vars 2017-01-31 18:46:19 +00:00
Andy Williams 9631552eaa filepanel: Don't apply filter to folders
This way we can browse around looking for matching files :)
2017-01-31 18:44:58 +00:00
YeongJong Lee 36a5bb1410 ui: Bring in current tab
Summary: Bring in current tab if it is not in the scope of scroller.

Test Plan:
1. Open project
2. Open several file
3. Check current tab is in the scope of scroller

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4416
2017-01-31 18:43:49 +00:00
YeongJong Lee b73f04cba3 filepanel: fix bug that unable to expand again
Summary:
When directory is contracted, hash data still remained.
In order to expand again, it is needed to delete hash data of subitems when contracted

Test Plan:
1. Open project.
2. Expand directory
3. Contract directory
4. Expand directory again
5. check that works fine

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4634
2017-01-31 07:41:39 +00:00
Andy Williams 378d4c763f filepanel: Fix file duplication bug.
Update of the UI was too slow to keep up with filesystem changes.
Introduce a new hash to mirror what is pending realisation.
Also fixes file filtering bug :)
@fix
2017-01-29 13:05:18 +00:00
Andy Williams bc3ef23a3d EFL fixes make this not needed 2017-01-28 13:00:10 +00:00
Andy Williams b85f66f14a search: Fix multiple search and bringing offscreen matches in 2017-01-22 09:56:44 +00:00
Andy Williams 8f4e7548b6 editor: Use elm_code for most of our syntax now.
This means realtime syntax and we can use clang for lookups
ad error prompts etc.
2017-01-21 16:02:33 +00:00
Andy Williams 2927f71dcf filepanel: Hide standard hidden files 2017-01-15 22:03:46 +00:00
YeongJong Lee 1c3474245a autosuggest: Fix segment fault when type long word
Summary:
It need a space more for adding a charater.
e.g. line 434..

Test Plan:
1. open suggest list in code file using <Ctrl> + <Space>.
2. type some long word.
e.g. 'evas_object_smart_callback_add'
3. Check there is no segment fault.

Reviewers: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4562
2017-01-13 11:45:39 +00:00
Andy Williams 63e6376697 editor: Display mime type description
If the language provider exists and can describe it :)
2017-01-12 13:08:50 +00:00
Andy Williams 2a82fedcb1 suggest: Move to a language provider
This means we can add great new stuff in a (nearly) pluggable way
2017-01-11 18:00:33 +00:00
Andy Williams e6feb19a30 suggest: Move documentaton lookup to suggeest provider
Trying to get all the clang code out of edi_editor
and into suggest_provider_c :)
2017-01-11 14:23:15 +00:00
Andy Williams 068949a25a suggest: Simplify sugggest API
Moving to a language provider so fewer entry points if possible
2017-01-11 12:48:28 +00:00
Andy Williams 14498afdaa config: Store relative paths for open files
Avoid problems with moving project
or having multiple copies of the same codebase!
2017-01-02 21:19:55 +00:00
Andy Williams 1b2ee9a372 elm_code: update for latest elm init 2017-01-02 14:39:58 +00:00
YeongJong Lee 73d8670247 autosuggest: Fix position when the suggest list is hidden.
Summary: Remove some unnecessary function.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4539
2017-01-01 14:26:57 +00:00
YeongJong Lee 76d00512f5 update AUTHORS.
Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4523
2016-12-29 18:10:23 +00:00
Andy Williams aef5bb8fef documentation: correct size for scaled displays 2016-12-28 23:36:22 +00:00
YeongJong Lee e4af7c18a9 editor_doc: Add documentation finding support using libclang
Summary:
<Ctrl> + <R_Click> opens document. This find doxygen comment using libclang and
dump each tags.
Now, it just support functions.

Test Plan:
1. Open document using <Ctrl> + <R_Click>.
2. Check that the document is correct.

Reviewers: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4522
2016-12-28 23:35:08 +00:00
Andy Williams 6574098205 elm_code: Update to new API signature 2016-12-27 22:17:30 +00:00
Andy Williams 16e34cfbdf we depend on elementary in git again 2016-12-27 20:16:40 +00:00
Andy Williams 53e7419009 autosuggest: add tests to clang suggest provider
A small refactor became obvious because the lookup is not really
using the curword passed in - we want all options then filter later!
2016-12-27 13:26:38 +00:00
Andy Williams c5a4aafe4d build: Fix some issues with the build output 2016-12-26 18:35:36 +00:00
Andy Williams 5d104b38f2 filepanel: correctly look up files within their dir
Avoid duplication even when multiple files have the same name
2016-12-26 18:34:44 +00:00
Andy Williams 65dc251098 ui: When tests are running show the build results first
As soon as test results appear then show the test panel
2016-12-26 18:33:16 +00:00
Andy Williams 49b55e838e autosuggest: refactor to split clang suggest code from editor
Make room for other suggest providers too
2016-12-24 23:31:29 +00:00
Andy Williams 9cef5db6c5 autosuggest: Move formatting to 1 place
Also correctly handle fonts with spaces
@fix
2016-12-23 22:56:55 +00:00
YeongJong Lee f9b8129724 autosuggest: One editor has one suggest evas object
Summary:
Remove unnecessary global variable.

This commit also fix bug that using autosuggest(<Ctrl> + <Space>) occurs
segment fault in non-code file.

Test Plan:
1. Run Edi.
2. Open project.
3. Open non-code file (e.g. README).
4. Call suggest list using <Ctrl> + <Space>.
5. Check that there is not segment fault.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4509
2016-12-23 10:07:03 +00:00
Andy Williams 0bc9f3dc1d editor: cleanup methods a little 2016-12-22 10:59:36 +00:00
Andy Williams 04d86d3250 don't crash on invalid lines 2016-12-22 10:56:53 +00:00
YeongJong Lee 0866448895 autosuggest: Support detail of suggest
Summary: The suggest list shows detail of suggest.(return type and parameter)

Test Plan:
1. Run edi.
2. Open project.
3. Open suggest list using <ctrl> + <space>.
4. Check that The detail of suggest is correct.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4505
2016-12-22 10:50:59 +00:00
YeongJong Lee 284c7ff3ca autosuggest: Change the variable name from 'autocomplete' to 'suggest' for readability.
Summary:
Change the variable name from 'autocomplete' to 'suggest'.
Because 'autocomplete' is too long.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4496
2016-12-19 23:26:26 +00:00
YeongJong Lee 21ae2bfebd filelist: Check that the filelist has same file before insertion.
Summary:
'elm_code_file_save' emit EIO_MONITOR_FILE_CREATED event.
It occurs filelist duplication.
So Check that the filelist has same file before insertion.

Test Plan:
1. Run Edi.
2. Open project.
3. Edit a file.
4. Save the file.
5. Check that the filelist doesn't have same file.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4497
2016-12-19 23:15:54 +00:00
Andy Williams d24ded8b5a editor: grab keys that should not feed down to elm_code 2016-12-17 13:16:18 +00:00
Andy Williams a112dcad9e autosuggest: properly guard the clang variables 2016-12-17 12:31:36 +00:00
YeongJong Lee 8d82796fa1 autocomplete: fix screen flicker when use autocomplete
Summary: Remove file save function when initialize clang.

Test Plan: Check that the screen is not blinking when use autocomplete.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4486
2016-12-16 22:06:49 +00:00
YeongJong Lee 9d128bdb40 autocomplete: Refresh candidate list when typing.
Summary:
if you start typing when candidate list is shown,
the list refresh immediately.

Test Plan:
1. Run edi.
2. Open project.
3. Open candidate list using <ctrl> + <space>.
4. Continue typing.
5. Check the candidate list is correct.

Reviewers: bu5hm4n, ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D4478
2016-12-13 07:42:36 +00:00
Andy Williams 3f76c4d290 elm_code: update parameter order 2016-12-12 08:30:59 +00:00
Andy Williams efd56cf918 fix typo in patch 2016-12-12 00:24:51 +00:00