snapdragon3101's blog

By snapdragon3101, 5 years ago, In English

This blog is outdated. See https://cpeditor.org

Hi Guys! For the past couple of weeks, I was working on a new Code Editor for Competitive Programmers. Today, I am happy to present it to you all, the first release of CP Editor.

But First, Why we need a new editor?

There exists so many code editor of all types, written in all languages but all of them are tailored down for Development of Software and none is specially focused for Competitive Programming. As competitive Programmers, we need our Editor to be Fast, Reliable and Something that just works. We focus mostly on correctness of our code and this involves compiling and re-running on sample test cases again and again.

CP Editor is Fast written in Native C++ (Qt), Cross-platform (works everywhere), and has all basic features that a competitive programmer needs from an editor. CP Editor takes away your responsibility of compiling the code and running it on your sample test cases. It automatically with just one click or keystroke compiles and runs your program and gives back to you the output.

Features
  • Code formatting with clang-format or any other tool of your choice.
  • Auto-parenthesis, Word Wraps, auto-indentation and all other basic editor features.
  • Syntax highlighting for C/C++
  • Dark theme for the code editor
Limitations
  • No support for language other than C/C++ (Sorry Python and Java users, I will try to add these languages ASAP)
  • No Auto-complete or Intelli-sense (It makes things slower, learn to remember stuff don't rely on LS too much).
  • Highlighting of Closed and its corresponding Open braces is not working. (I am working on it).
Installation
  • For Windows, you can get the Installer file from here. Install it just as you do with other software.
  • For Linux, you can download and run the Editor on any distribution with AppImages. Get it here

This is a code editor and does not come with any Compiler bundled.

So you will need mingW-gcc or clang or msvc on your PATH.

As with every great software, this Editor also comes with all its code open-sourced and you can verify for yourself that your code remains on your machine and never goes anywhere.

The project is available at https://github.com/coder3101/cp-editor2

For complete instructions, setup queries and other issues please refer to the above URL.

Happy Coding !!!

EDIT

If you face any issue regarding VCRUNTIME140_1.DLL MISSING.

Please Install Microsoft Visual C++ Redistributable for Visual Studio 2015, 2017 and 2019 for your system.

Credits : naimul_haque

  • Vote: I like it
  • +192
  • Vote: I do not like it

| Write comment?
»
5 years ago, # |
  Vote: I like it +1 Vote: I do not like it

Great Software Bruh! Loved it. Its easy to use and also lightweight. Takes less time to compile and run. Dark Mode is awesome. More than two input files can run together and in just a very few seconds, we can see the output as well. From today onwards, I will use this software to write codes for cp questions.

»
5 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Hi! I installed the precompiled setup for Windows but I am having trouble running it.

After installing when I first tried to run CP-Editor, an error message popped up saying

VCRUNTIME140_1.dll is missing.

I downloaded the DLL file but now it shows a different error -

The procedure entry point __CxxFrameHandler4 could not be located in the dynamic link library.

Please fix.

  • »
    »
    5 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    I've got the same problem.

    Searching online to download a VCRUNTIME140_1.dll would help.

    Place the dll in the System32 folder will fix the problem :P

»
5 years ago, # |
  Vote: I like it 0 Vote: I do not like it

I have not used the app however there's a suggestion from my side to use single key for run(maybe F10) and compile & run(F9). Small improvement but makes a huge diff.

  • »
    »
    5 years ago, # ^ |
      Vote: I like it +6 Vote: I do not like it

    In some future release I will provide a way to customize the shortcut keys. But Even having F10 or F5 still requires pressing Fn Keys. In most of the newer laptop the Function keys by default perform operations like volume Up, brightness and stuff, unless the behavior is changed from BIOS.

    I thought if it needs 2 keys anyways, why not make it easy to reach key like Ctrl+R to run.

»
5 years ago, # |
  Vote: I like it 0 Vote: I do not like it

I have installed it but it failed to start compiler process.

What we need to enter in Compile Command, Run Command, Format Command

»
5 years ago, # |
Rev. 2   Vote: I like it +1 Vote: I do not like it

Very good IDE for competitive programming purposes, but please implement some form of variable autocomplete. When upsolving I like to use long, descriptive variable names, and autocomplete is very useful.

»
5 years ago, # |
  Vote: I like it 0 Vote: I do not like it

can't checkout the check box for comparing expected output. how can i do that?

»
5 years ago, # |
  Vote: I like it 0 Vote: I do not like it

I downloaded the file on Linux and I also gave necessary permissions but it's still not working when I double click it. Am I missing something?

  • »
    »
    5 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    try ./CPEditor.AppImage after chmod a+x

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      No It's still not working.

      • »
        »
        »
        »
        5 years ago, # ^ |
        Rev. 2   Vote: I like it 0 Vote: I do not like it

        So what is the error that comes when you run the execute command. Anything specific?

        Also your distro and OS please?

        • »
          »
          »
          »
          »
          5 years ago, # ^ |
          Rev. 2   Vote: I like it 0 Vote: I do not like it

          I have ubuntu and I typed this in my terminal "./CP_Editor-1.50.2-x86_64.AppImage" and it is saying "./CP_Editor-1.50.2-x86_64.AppImage: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /tmp/.mount_CP_Edi2gRLA6/lib/libicuuc.so.65)"

          • »
            »
            »
            »
            »
            »
            5 years ago, # ^ |
              Vote: I like it 0 Vote: I do not like it

            It seems that you need to upgrade to Ubuntu Disco or Eoan. Otherwise you won't have the required libc version.

»
5 years ago, # |
  Vote: I like it 0 Vote: I do not like it

how can i see the name of my current file? and how can i open two file at a time?

»
5 years ago, # |
Rev. 2   Vote: I like it 0 Vote: I do not like it

i think save option isn't working at all. it saves a null file. it saves file when application closed.

»
5 years ago, # |
Rev. 2   Vote: I like it 0 Vote: I do not like it

An error popped out while trying to run my program:

Unsupported 16-Bit Application

The program or feature "\??\C:\Users\USER\AppData\Local\Temp\a.exe" cannot start or run due to incompatibility with 64-bit versions of Windows. Please contact the software vendor to ask if a 64-bit Windows compatible version is available.

  • »
    »
    5 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    Are you using a Cross compiler. The gcc or compiler you have used in compile command is most likely to be old and is producing 16 bit binaries. Use a different compiler the one compatible with your system.

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      My compiler is called "GNU GCC Compiler" as in Code::Blocks 17.12. I've been using this compiler at Code::Blocks and it works fine (assume that it means my compiler is compatible with my system).

      I think the problem may be my compile command: g++ -Wall -fexceptions -g -O3 -std=c++14 -c. I'm not familiar with writing compile commands, since Code::Blocks automates it, so I think that there's something wrong with my compile command.

      For reference, I'm using a 64-bit Windows 7 Professional.

      • »
        »
        »
        »
        5 years ago, # ^ |
          Vote: I like it 0 Vote: I do not like it

        Reset the settings. Keep g++ -Wall as compile command.

        • »
          »
          »
          »
          »
          5 years ago, # ^ |
            Vote: I like it 0 Vote: I do not like it

          So I tested the editor on another code today, and the error above no longer shows up. Instead I saw this at the Compiler Messages:

          [09:32:43] [Runner[1]] [Error occurred during execution on first testcase]

          right after I run my code. The same error occurred for all the inputs I've specified. I've then changed my compile command into g++ -Wall but that doesn't seem to change anything.

          Is there a way I can reset all the settings other than uninstalling and reinstalling the editor?

          • »
            »
            »
            »
            »
            »
            5 years ago, # ^ |
              Vote: I like it 0 Vote: I do not like it

            There will be a file in your home directory (in case of windows : C:/Users/your_name) named cp_editor_settings.ini. Delete it or you can also reset all settings from Help => Reset Settings

            If problem persist, try disabling your Antivirus which maybe preventing your executable from running. For that check to C:/Users/name/AppData/Local/Temp directory a file named a.exe, if it exists try running it by double clicking it, does it starts. (a.exe will exist only after compilation was okay)

            • »
              »
              »
              »
              »
              »
              »
              5 years ago, # ^ |
                Vote: I like it 0 Vote: I do not like it

              It's finally working. Thanks!

              Hope that the issue with file saving will be fixed soon. :)

»
5 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Can you add the font changing

»
5 years ago, # |
  Vote: I like it 0 Vote: I do not like it

I didn't understand it -> Code formatting with clang-format or any other tool of your choice In Codeblocks Code can be format A style how I gonna make this happen in this editor. You know sometimes codes are too large and if there a format option then it will be helpful for me. Thanks in advance for your this beautiful creature buddy .

  • »
    »
    5 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    Install llvm, it will install clang-format and while installing choose add to PATH. Now change format command to clang-format -i. Press CTRL+ALT+L to format the code.

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      I added clang-format in system path but its showing the same when i pressed ctrl+alt+L that "[The format process didn't finish in 2 seconds. This is probably because the clang-format binary is not found by CP Editor. You can set the path to clang-format in Preferences->Formatting.]"

      What should I do?

      • »
        »
        »
        »
        5 years ago, # ^ |
        Rev. 2   Vote: I like it 0 Vote: I do not like it

        So have you tried "set the path to clang-format in Preferences->Formatting"?

        • »
          »
          »
          »
          »
          5 years ago, # ^ |
            Vote: I like it 0 Vote: I do not like it

          No, I didn't understand what I should do.In formatting there are two options 1)clang-format command 2)clang format style How should I proceed?

          • »
            »
            »
            »
            »
            »
            5 years ago, # ^ |
              Vote: I like it 0 Vote: I do not like it
            1. I was suggesting you try setting the path to your Clang Format executable file in "Clang Format Command".

            2. Have you got this warning: "Code formatting failed to work. Please check whether the clang-format binary is in the PATH and the style is valid."?

            3. Can you run exactly clang-format --version in the terminal to get the version of Clang Format?

            4. Can you use Clang Format in the terminal to format a file in no more than 2 seconds?

            • »
              »
              »
              »
              »
              »
              »
              5 years ago, # ^ |
                Vote: I like it 0 Vote: I do not like it

              I just changed from "clang-format -i" to "clang-format" and it showed formatting complete.Is it done ?

              Another question ,what is its use?I mean what formatting is it talking about?

»
5 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Can it run on macOS?

»
5 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Very good editor for cp

»
5 years ago, # |
  Vote: I like it 0 Vote: I do not like it

An interesting feature would be merging it with cftools by xalanq, so the editor may automatically crawl sample cases from cf rounds and submit solutions (maybe use it as an extension).

»
5 years ago, # |
  Vote: I like it +4 Vote: I do not like it

This is very good app, but just a suggestion to clear all the output boxes everytime we rerun the program and also to print stuff to the output boxes even if the program crashed for people who uses print messages to debug

  • »
    »
    5 years ago, # ^ |
      Vote: I like it +8 Vote: I do not like it

    I have added this feature in new release. If your program crashes everything in the stderr will be printed out to output box with red color.

»
5 years ago, # |
  Vote: I like it +3 Vote: I do not like it

The editor starts "Not responding" for large input, there should be a button to kill the compliation and run. Rest its amazing!!!!

  • »
    »
    5 years ago, # ^ |
      Vote: I like it +3 Vote: I do not like it

    Large input to stdin?. As for stopping compilation if an compilation was active and you again press compile button. The old would get killed a new would start. Making sure that editor only executes one compiler process at a time. Yes, a button to killing a running executable would be nice. I already added a killtimer. So if your process hang up. Say in some infinite loop. The editor will kill the process after 5 sec. (It doesn't seem to work on windows but works on my linux)

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it +8 Vote: I do not like it

      Oh! I am using in Windows.

      Some constructive suggestions:

      • An Autosave feature will be very nice!!!!
      • Resizable output window.
      • Kill timer for Windows too :)

      Hats off for your work!

»
5 years ago, # |
  Vote: I like it 0 Vote: I do not like it

I have installed it. I have also installed mingw compiler , now what should I write in change compile command?

  • »
    »
    5 years ago, # ^ |
    Rev. 2   Vote: I like it 0 Vote: I do not like it

    g++ -std=c++14 -static -Weffc++ -s

    Here if you want to use auto, in case your compiler is not in C++ 14 settings

»
5 years ago, # |
  Vote: I like it +1 Vote: I do not like it

This editor is amazing! I just tried it in a virtual contest, and it really makes editing and debugging code much faster. I liked that it can run my program on 3 test cases at the same time. And it is super fast compared to Code::Blocks, which I used before.

»
5 years ago, # |
  Vote: I like it 0 Vote: I do not like it

When i use character '{' and '}' to make pair, it auto create new line and i don't want it. So can you just create '}' when I type '{' and make create new line as option.

»
5 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Good editor

»
5 years ago, # |
  Vote: I like it +2 Vote: I do not like it

Hats off for your work! Really amazing editor.

»
5 years ago, # |
  Vote: I like it +1 Vote: I do not like it

 how to fix it?

  • »
    »
    5 years ago, # ^ |
      Vote: I like it +1 Vote: I do not like it

    To fix what? If you mean the compiler warning:

    1. It's not related to this editor, it's only about C++.

    2. 1<<32 will cause overflow because 1 is an int literal, $$$2^{32}$$$ is out of the range of int.

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      but cf accepted my solution with that, that's why i was confused.. btw tnx

»
5 years ago, # |
  Vote: I like it 0 Vote: I do not like it

thanks bro i thought my compiler is screwed after installing your editor i know sublime is screwed

»
5 years ago, # |
Rev. 3   Vote: I like it 0 Vote: I do not like it

I love this editor but the only problem for me is that it's currently displaying the whole code in a Single Colour for python Programs making it pretty ugly to look at. Can you please change this or provide a workaround for this!

UPD: I just removed the first line of my Program which had a Comment and it works now.

  • »
    »
    5 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    What's your code? Have you set the language to Python?

    • »
      »
      »
      5 years ago, # ^ |
      Rev. 3   Vote: I like it 0 Vote: I do not like it

      Yes, I did. I tried different codes. And looks like the problem is only with python programs, whenever I select Python from the menu at the IO Tab, the colou scheme changes and it turns into only one Colour.

      UPD: I just removed the first line of my Program which had a Comment and it works now.

      • »
        »
        »
        »
        5 years ago, # ^ |
          Vote: I like it 0 Vote: I do not like it

        What's that first line?

        • »
          »
          »
          »
          »
          5 years ago, # ^ |
            Vote: I like it 0 Vote: I do not like it
          '''
          // Author : snape_here
          ''' 
          

          It was like this at first!

»
5 years ago, # |
  Vote: I like it +1 Vote: I do not like it

It is showing this error: [Code formatting failed to work. Please check whether the clang-format binary is in the PATH and the style is valid.]

Error photo: Error

Please help me in setting up CP Editor with CF Tool and Competitive Companion. It would be really awesome if you can write the steps pointwise of how to set it up with CF tool and parse it and where to run all those commands like cf race, cf upgrade, etc. A video of setting it up will be highly appreciated. Please help snapdragon3101 ouuan

PS: I'm able to run the codes as I have installed MinGW in my PC.

»
5 years ago, # |
  Vote: I like it 0 Vote: I do not like it

I can't find out how to zoom in or out in editor.

»
4 years ago, # |
  Vote: I like it 0 Vote: I do not like it

snapdragon3101 I added the path "/usr/bin/clang++-10" after installing clang by the command 'sudo apt install clang' on Ubuntu 20.04 Now this error pops up in the Binary Formatter on the right. Can you please suggest me how to fix this.

clang: error: unsupported option '--cursor=360' clang: error: unsupported option '--style=file' ]

  • »
    »
    4 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    Just put clang-format

    • »
      »
      »
      4 years ago, # ^ |
      Rev. 2   Vote: I like it 0 Vote: I do not like it

      snapdragon3101 Can you tell me the details like put clang-format but, where in the path or style. And if you meant to include a file named 'clang-format' then where do I find that, because I can only see these five executables in my \usr\bin directory clang clang++ clang++-10 clang-10 clang-cpp-10

      • »
        »
        »
        »
        4 years ago, # ^ |
          Vote: I like it 0 Vote: I do not like it

        Short answer: sudo apt install clang-format-10 and put clang-format-10 in Clang Format->Path in the Preferences.

        Other details:

        1. clang++ is the compiler, not the formatter.
        2. Though the name of that setting is "Path", you only need to make sure that you can run it in the terminal, so if it's in the PATH, you don't need to put the complete path.
        3. I'm not using Ubuntu so I'm not sure, but perhaps clang-format is not included in the clang package on Ubuntu.
»
4 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Hi, Can you please help me with how to handle interactive problems? Like is there any option through which one can open an interactive screen?

  • »
    »
    4 years ago, # ^ |
      Vote: I like it +3 Vote: I do not like it

    Actions -> Detached Runruns your binary in separate command window.

»
4 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Can anyone Please tell me How to install and run CPEditor in Mac? And How to configure CFtool in Mac?

»
4 years ago, # |
Rev. 2   Vote: I like it 0 Vote: I do not like it

Please look this error!! ![ ](

View post on imgur.com
) How to fix it? I went to preference->extensions->clang format-> (there were two blocks: 1 was asking for clang path and 2 was asking for style) I have tried putting clang-format , clang-format-i,clang-format-6 & clang-format-10. But none of them worked. Please help ouuan snapdragon3101
»
4 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Hey, Can someone help me with setting up cpeditor in windows? I am currently getting this .

Thanks

  • »
    »
    4 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    Got fixed ! Had trouble with my c++ environment setup.

»
4 years ago, # |
Rev. 4   Vote: I like it 0 Vote: I do not like it

Everything is fine except,

it looses its last saved setting, snippets..Any file missing??Or its happening with anyone.

»
3 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Hello, how do I use language server arguments like -Wno-unused-variable,-Wno-infinite-recursion,-Werror=implicit-function-declaration,-Wshadow,-Wno-shadow-field-in-constructor-modified,-Wno-shadow-ivar,-Wuninitialized,-Wunused-label,-Wunused-lambda-capture ?

I tried to copy paste the arguments in the "Arguments for Language Server" section, but after I did that the linter stops working.

»
3 years ago, # |
  Vote: I like it 0 Vote: I do not like it

[Failed to start compilation: Failed to start the compiler. Please check Preferences->Language->C++->C++ Commands->C++ Compile Command or add the compiler in the PATH environment variable.] How do I fix this? I really need help.

»
7 months ago, # |
Rev. 2   Vote: I like it 0 Vote: I do not like it

.