Giter VIP home page Giter VIP logo

exco's People

Contributors

jakobdev avatar matkuki avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

exco's Issues

QPoint Error

I want to test this app.
It shows:
TypeError: arguments did not match any overloaded call:
QPoint(): too many arguments
QPoint(int, int): argument 1 has unexpected type 'float'
QPoint(QPoint): argument 1 has unexpected type 'float'

Cannot run from a read-only location

Cannot run from a read-only location. Please make it save its settings in $XDG_CONFIG_HOME.

% python3 /var/run/user/1001/_home_user_Desktop_ExCo-6.15.zip/ExCo-6.15/main.py 
No module named 'cython_lexers'
No module named 'nim_lexers'
Traceback (most recent call last):
  File "/var/run/user/1001/_home_user_Desktop_ExCo-6.15.zip/ExCo-6.15/main.py", line 154, in <module>
    main()
  File "/var/run/user/1001/_home_user_Desktop_ExCo-6.15.zip/ExCo-6.15/main.py", line 145, in main
    file_arguments=file_arguments
  File "/var/run/user/1001/_home_user_Desktop_ExCo-6.15.zip/ExCo-6.15/gui/mainwindow.py", line 129, in __init__
    self.settings   = self.Settings(self)
  File "/var/run/user/1001/_home_user_Desktop_ExCo-6.15.zip/ExCo-6.15/gui/mainwindow.py", line 2657, in __init__
    data.resources_directory
  File "/var/run/user/1001/_home_user_Desktop_ExCo-6.15.zip/ExCo-6.15/settings.py", line 332, in __init__
    self.create_settings_file(self.empty_settings_list)
  File "/var/run/user/1001/_home_user_Desktop_ExCo-6.15.zip/ExCo-6.15/settings.py", line 343, in create_settings_file
    file = open(self.settings_filename_with_path, "w", encoding="utf-8")
OSError: [Errno 30] Read-only file system: '/var/run/user/1001/_home_user_Desktop_ExCo-6.15.zip/ExCo-6.15/exco.ini'

Crash when press ket ALT and select text by mouse move in a line

Hi matkuki,

I found an issue in Qscintilla, as title descriped. But it don't crash in Notepad++ and this could be cause by editor.selectionChanged signal and editor.selectedText().
The detailed steps are below:

1: Press and hold the key ALT until crash.
2: Press and hold the left mouse button.
3: Move mouse left or right in a line to select text until the length of selected text is greater than 6, the gui will crash.

I tried to print editor.selectedText() when did this operation, the result had a "\n" at the end of it.

Thanks.

Column select mode, blank line, unstable, crash.

  1. Open new file.
  2. Add single line with only spaces. (64 spaces should do)
  3. Initiate column select (CTRL+Mouse-Select) on that lines (at or near beginning of line).
  4. Extend selection with mouse towards the end of the line.
  5. Tends to crash at some point.
  • On multiple blank lines. Extending the selection over more than one line first, seems to bypass this issue. (as long as multiple lines are kept selected)

Terminal output at crash:
free(): invalid pointer
Aborted (core dumped)

Process 4618 (python) of user 1000 dumped core.
Stack trace of thread 4618:
#0  0x00007efe52c75e97 __GI_raise (libc.so.6)
#1  0x00007efe52c77801 __GI_abort (libc.so.6)
#2  0x00007efe52cc0897 __libc_message (libc.so.6)
#3  0x00007efe52cc790a malloc_printerr (libc.so.6)
#4  0x00007efe52ccef60 _int_free (libc.so.6)
#5  0x00007efe5091eb4c n/a (/home/<user>/test_venv/lib/python3.6/site-packages/PyQt5/Qt/lib/libQt5Widgets.so.5)
#6  0x00000000028fe450 n/a (n/a)
#7  0x00007efe502a5148 n/a (/home/<user>/test_venv/lib/python3.6/site-packages/PyQt5/Qt/lib/libQt5Gui.so.5)

Using: Ex.Co 6.13
(other local version's info below)


Some Issue background:

Issue initially encountered with eric6 (also reporting it here on the off change it might potentially expedite a potential fix)

Process 3684 (eric6) of user 1000 dumped core.
Stack trace of thread 3684:
#0  0x00007f5764b46e97 __GI_raise (libc.so.6)
#1  0x00007f5764b48801 __GI_abort (libc.so.6)
#2  0x00007f5764b91897 __libc_message (libc.so.6)
#3  0x00007f5764b9890a malloc_printerr (libc.so.6)
#4  0x00007f5764b98b0c malloc_consolidate (libc.so.6)
#5  0x00007f5764b9c7d8 _int_malloc (libc.so.6)
#6  0x00007f5764b9f2ed __GI___libc_malloc (libc.so.6)
#7  0x00007f57626dc298 _Znwm (libstdc++.so.6)
#8  0x00007f57565b9b8a n/a (/home/<user>/test_venv/lib/python3.6/site-packages/PyQt5/Qt/lib/libQt5Gui.so.5)

Additional version Numbers (pulled from eric6 version info window)

Python: 3.6.9, 64-Bit
Qt: 5.14.2
PyQt: 5.14.2
PyQtWebEngine: 5.14.0
QScintilla: 2.11.4 <= seems to be the main source for this issue.
sip: 5.1.2
WebEngine: 77.0.3865.129
eric6: 20.4 (rev. daa7d050b3af)

(Linux Mint 19.3 cinnamon)


... Mmm. Think I might have found myself a new potential alternative code editor ...

QsciLexerCustom fold code by indent or keyword

Dear Developer,
I'm a SAS program in a CRO company. I created an editor about SAS language in my spare time, and I created a class QsciLexerSAS which inherit QsciLexerCustom to highlight the word in the editor through learn about your Excillent code, and my editor works very well.

#My question is about how to fold the code by myself, and I did't find any reference resources. If you have any suggestions, could you mind tell me? Thank you very much.
What's SAS: https://en.wikipedia.org/wiki/SAS_(software) #

'Close other tabs' needed

The context menu when a tab is right-clicked should have this option and maybe other similar options.
Add them.

CPP lexer error

Fix this error when opening a C/C++ file:

Traceback (most recent call last):
  File "C:\SK_Na_POT_vd\ExCo\forms.py", line 5468, in dropEvent
    self.parent.open_file(self.drag_dropped_file,  self)
  File "C:\SK_Na_POT_vd\ExCo\forms.py", line 2254, in open_file
    open_file_function(file, basic_widget)
  File "C:\SK_Na_POT_vd\ExCo\forms.py", line 2211, in open_file_function
    new_tab = basic_widget.editor_add_document(in_file, "file", bypass_check=False)
  File "C:\SK_Na_POT_vd\ExCo\forms.py", line 5848, in editor_add_document
    new_editor_tab.choose_lexer(file_type)
  File "C:\SK_Na_POT_vd\ExCo\forms.py", line 8034, in choose_lexer
    lexer   = lexers.CPP()
  File "<string>", line 63, in __init__
  File "<string>", line 73, in set_theme
AttributeError: type object 'CPP' has no attribute 'InactiveEscapeSequence'

Possible addition of new language

Hi,
I am implementing a new markup language (something akin to Markdown, but geared towards novel publishing).
I think it would be extremely useful to add some kind of integrated editor (right now I'm focused on command-line utilities to convert from markup to LaTeX/XHTML).
Features I have in mind, in increasing order of complexity, are below.
Real question is:
In Your opinion, is ExCo the right tool to use?
If so: what will be the effort required?
Thanks in advance.

Features:

  • Syntax Highlighting: there are a few commands, possibly nested, all with the general structure:
    @command[param1][param2]{contents, possibly very long and containing @nested[]{commands}}
  • Syntax substitution: since all commands have a semantic value (e.g.: @speech for direct speech or @standout for some kind of visual enhancement) it would be nice to render on-screen with some convention (e.g.: different font or color) hiding labels that are distracting.
  • Commands to wrap selected text in a command.
  • A browser keeping track of book structure (the usual division: book, part, chapter, scene) with possibility to jump to corresponding place in text.
  • Spell checker (better if something like Languagetool is available).
  • Details pane: to keep track of characters, places, objects: once defined these should be highlighted in text.
  • Commands to call my processing programs to export to the various output formats (currently XHTML/ePUB and LaTeX/PDF), possibly with some preview (might be external).
  • Some configuration pages to customize defaults (e.g.: direct speech style: guillemots/inverted quotes/em-dash).

Any insight welcome

Is ExCo suitable for embedding in another application?

I'm building an application that has a file editor component which I'd like to have decent notepad like functionality (with highlighting and expected features like find and replace). I think I can do it with QsciScintilla and my own lighter QsciScintilla-based widget, but I wonder if I could save effort by starting with Ex.Co?

Is Ex.Co suitable for embedding in a larger application? Is there too much global state and application code that might conflict with my own application? Does your license allow me to canabalize chunks of your code if I liked your find/replace widgets for example?

Thank you for building such a great tool!

Thanks!

Python code tree display

When there is an error in parsing python code for tree displaying,
the error message needs to be displayed!

Go to tab right/left

Hi,

I just came across your very cool project. A couple of questions:

  • Is there a go to tab right/left function (and shortcut) in ExCo (as opposed to moving a tab right/left)?
  • If there isn't such a feature, do you support adding it?

Kind regards
Novak

This is a question about the cursor in the qscintilla, not an issue

Hi matkuki,
I have a question about how to get the cursor position in the screen? The statement self.cursor() returns the mouse position, and also self.getCursorPosition() only return the line and col number. But in the QPlainTextEdit, we can get the cursor position in the screen by using self.cursorRect(). I want use this position to create the auto complete panel instead of default completion in the qscintilla.
I have researched in "https://www.scintilla.org/ScintillaDoc.html" and looked it into the google for many days, but still not find the solution.
Do you know any solution about this?
Thank you very much,
Bin

Talking about themes

I saw that you have themes for your editor. I'm the author of an editor which uses QScintilla too. I want to implement theme support. So I want to ask you were to you got this them? Have created them by yourself or have you ported them from another editor? Themes need a lot of work, because you have to set colours for each lexer.

Add custom themes as separate files

Add custom theme file generation, so users can add their themes without breaking their setting every time they update to a new version of ExCo.

QPoint Error

PyQt5 5.15.6
macOS Monterey 12.0.1
Python 3.10

TypeError: arguments did not match any overloaded call:

QPoint(): too many arguments
QPoint(int, int): argument 1 has unexpected type 'float'
QPoint(QPoint): argument 1 has an unexpected type 'float'

Everything looks great but to QPoint, you must pass on int values.
Anyway, I edited your code (only for myself) and made it an integer. I am also making an IDE on QScintilla. It has 10 supported lexers, autocompletion (For Python), running all programs. I am making a new app collection.
It has 6 apps (including the IDE I created). Browser, Camera, Audio Converter, Online Public Chat Group, IDE, and Word-like Text Editor.

I might add your app to my collection if you add features to show docs, call tips and run many languages.

All the very best.

drag file from directory tree to desktop or local folder

Hi,
Thanks for your wonderful work, and I made a similar file/directory tree explorer with yours.
Could you mind adding a new function that we can drag file or folder from directory tree to desktop or other local folder?
I search the solution many days to solve this issue, but don't have any useful information about dragMoveEvent, dragEnterEvent or dragLeaveEvent.
Thank you.

screenshot

Opening a session sometimes causes a crash

The traceback:

Traceback (most recent call last):
  File "D:\ExCo\helper_forms.py", line 1749, in parent_destroyed
    self.parent.close_tab(self)
AttributeError: 'NoneType' object has no attribute 'close_tab'

Mac OS10.11 Missing Dependency

Just tried running under Anaconda Python 3.5.1 on OS 10.11 El Capitan. Running main.py gives:

Traceback (most recent call last):
File "main.py", line 71, in
import forms
File "/Users/zen/Code/git/ExCo/forms.py", line 91, in
import PyQt4.Qsci
ImportError: No module named 'PyQt4.Qsci'

I tried pip installing qscintilla, which installed PyQt 5, but I still receive the same error.

Feature request

Hi I would like to ask for another feature.
I don't know what's it's called but, the feature I wanna ask is something like this:
when I highlight a word in the text editor, I would like all of the same words would be highlighted too.

Thanks.

Advanced function Autocompletion Questions

Hello,Happy to learn from the code examples you provided, but I now have a functional problem with automatic case completion ignoring. By running the program You provided EX.CO. 6.13, I enable the function of autocompletion, but when I actually typed in the text, I found that when I typed in INT and then lowercase i, the prompt for iNT would appear, that means I in INT is replaced by i.This is not the automatic completion case ignore I want, how do I achieve this function, look forward to your tips and advice. Thank you very much.

Thank you very much for the program!

Hello, thank you very much for a good program under a free open source license! Added a program to a Russian-language site about free software, here is the link.

The project is interesting, so please don't abandon it!

The only question is how to run a python script directly from the editor?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.