Commit Graph

752 Commits

Author SHA1 Message Date
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
YeongJong Lee ebc07e85e0 autocomplete: Add code autocomplete using clang
Summary:
Pressing shortcut(<ctrl> + <space>) while editing the code show
the list of suggestions.

This support variable, function, struct member.. etc.
It is simple version, so it show just function name without parameter, return type.

Test Plan:
1. Run edi.
2. Open project.
3. Press shortcut(<ctrl> + <space>) while editing the code.
4. Check that the list of suggestions are correct.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Subscribers: bu5hm4n

Differential Revision: https://phab.enlightenment.org/D4476
2016-12-12 00:23:22 +00:00
Jean-Philippe Andre 886b6356bd editor: Fix crash when resizing without any code open 2016-11-30 15:34:34 +09:00
Andy Williams 65cda5ee4d fix extension lookup so we can see .eo files again 2016-11-30 04:00:48 +00:00
Andy Williams 48e954137f files: Avoid missing mime check 2016-11-30 01:51:46 +00:00