### Hernan's blog

By Hernan, 12 years ago,

Many people ask for the best IDE for programming contests where you don't need all the features than eclipse, Netbeans or VS has, there are many simple editors but only a few editors are really worth using.

Far Manager is a great tool for training in programming comptetitions because you can add lots of plugins avalible for it and extend the power like acced to ftp server, open compressed files, syntax highlighting, etc..

Far Manager has an simple editor than you can use for write source code and test data for a problem, you can also manage your files, preview text files and execute system commands to call compilers.

# What is Far Manager?

The oficial site says:

" Far Manager is a program for managing files and archives in Windows operating systems. "

# Download

You can download Far Manager here, i strongly recommend download the latest nightly build in archive mode.
After download is finished uncompress the .7z file in a folder called Far then run far.exe.

Far Manager Main Screen

# The Basics

Read the problem statement of Theatre Square, i use the solutions of t__nt in C++ for explain the basics of Far Manager.

1: #include <cstdio>2:3: int n, m, a;4:5: int main() {6:     scanf("%d%d%d", &n, &m, &a);7:     printf("%lld\n", ((n + a - 1LL) / a) * ((m + a - 1LL) / a));8:     return 0;9: }

The main screen contains two panels and the command line, you can rename, delete, create and view files or folders also copy or move files or folders between panels.

In the command line using the plugin farcmds you can call system commands like type echo and others.

Panels and Command Line

Make a folder called codeforces where you will put your source code pressing F7.

Making a folder

Type cd codeforces the press Shift + F4 for create a new file: theatre.cpp

Create a File

Now you can type the source code and save pressing F2.

Editor

Close the file pressing F10.
For compile the source code, assuming g++ is in the Path, type far:view <g++ -o theatre.exe theatre.cpp and you'll see the compiler messages, quit with F10 too.
Now create your input file theatre.in with the next content:

6 6 4

the solution for this test case is 4.

Run your program typing far:view <theatre <theatre.in

# Syntax Highlighting

Colorer is a plugin for Far Manager than allow you highlight the source code for many languages, you can download here and uncompress into the Plugins folder.
After restart far you can view:

Editor with Colorer

# Notes

You can use Far Manager in Linux if you have wine installed.

• +10

 12 years ago, # |   +1 Yeah, Far is a very powerful IDE. But to my mind it is useful only in olympiads and tiny projects. Using a debugger with Far is not a trivial task. Thus to debug a program one can use only console output and code reading. This forces you to search bugs not by tracing the program but by careful reading one line after another. Being able to find bugs while reading the code is very useful in ACM-like contests. A computer is a bottleneck so it's better to use it for writing solutions than for searching bugs.
•  12 years ago, # ^ |   0 Our team solved this problem.At the beginning we created a project in Visual Studio called "template" with one file: solution.cppWhen we are going to solve problem X, we just copy "template" project into X directory and start to write code in solution.cpp file. If anything goes wrong, we just press Enter at the template.vcproj file and Visual Studio opens, ready to debug our code, written in Far.
•  12 years ago, # ^ |   0 When I use far as IDE for olympiads, i used gdb as debugger.
 12 years ago, # |   0 Thank you for this useful article. I didn't know about far:view feature even though I have been using FAR for 1 year. However, all these far:view, far:edit and other commands don't work when you set "Execute command " in "File association" menu. Do you know any workaround for this issue?
 12 years ago, # |   0 For GNU/Linux a similar tool is Midnight Commander.
•  12 years ago, # ^ |   +4 Midnight is awful for editing files! Of course, as a commander it seems to be a good alternative to far manager, but did you try to code your problems in it? Pressing escape twice to exit the file; strange chars when opened in Windows...
•  10 years ago, # ^ |   0 Pressing escape twice to  exit the fileIt's customizable;strange chars when opened in WindowsLooks like you're using a bad editor in Windows. In Unix-like systems there is only one byte for line break, unlike Windows with two bytes. So when such files are opened in Notepad, they look strange, but in normal editors everything is OK ;)
•  12 years ago, # ^ |   0 I agree with mak_kbtu. MC had a lot of small imperfections comparing with Far, or may be it's just matter of your habits.But it's hard to me write or navigate in MC, so I still using vim+bash+kate under linux :)
•  8 years ago, # ^ | ← Rev. 2 →   +6 vim + Kate? How does that work together? :D
•  8 years ago, # ^ |   0 Kate is a main editor (for code, samples, etc) and vim is used when I need to create or fix some file which is not opened in Kate (or if I don't want to switch windows). Another usecase is to open very big file (editors usually fail with this one).
•  21 month(s) ago, # ^ |   0 but can we compile c++ or python program using midnight commander.
 12 years ago, # |   0 Can I create a template for some file extensions? For ex: if I will create "problem.cpp", there will be prepared code: "#include<...> using namespace std ....".
•  12 years ago, # ^ |   0 I use a file named 'template.cpp' with my initial code then i use F5 or F6 with other name like a.cpp.does anyone knows another trick?
•  12 years ago, # ^ |   0 I saw .pas template but not C++ :(
•  12 years ago, # ^ |   0 Как  сделать чтоб при открытии .pas сразу писался шаблон?
•  12 years ago, # ^ |   0 я уже не помню, смотрел давно... поищи тут http://forum.farmanager.com , http://plugring.farmanager.com.
 12 years ago, # |   0 To the point, did you get Far Manager to work under Linux? When I installed it under wine, the plugins work rather well, but I couldn't run far and compilation commands. If you or someone managed to cope with this problem, please, share!
•  7 months ago, # ^ |   0 The project far2l is now functional and wonderful!
 » 8 years ago, # |   0 In Linux I used gedit with MC
 » 8 years ago, # | ← Rev. 2 →   +3 I think I'm not really getting it. What is the advantage of this over a good shell + editor combination like GNU EMACS or vim? Scriptability is hardly a good argument because any given piece of GNU software can be scripted
 » 8 years ago, # |   0 Can you compare this program with Vim/gVim. Vim is also a powerful tool too.
 » 7 years ago, # |   0 I am trying to compile in far manager, if i install g++ on terminal it will compile? what i have to do ?
•  » » 3 years ago, # ^ | ← Rev. 2 →   -8 I had the same problem. It is working. I have tried a few times.
 » 7 years ago, # |   +5 For anyone curious, the syntax highlighting is included "since post build 3200", so if you download one of the newer builds of far manager, far colorer(the syntax highlighter) is already included.
 » 6 years ago, # |   0 Why nightly over stable?
 » 6 years ago, # | ← Rev. 2 →   +3 I will strongly recommend Geany for Linux. It's very simple and you don't have most of the unuseful things that Eclipse and other IDEs have. I haven't tried it on Windows but I thing there is a version for it.
 » 6 years ago, # |   0 How to set up and use indentation in Far manager ??
•  » » 6 years ago, # ^ |   0 F9 — Options — Editor settings. I'd recommend checking "Auto indent" and adjusting "Tab size". You can also use Alt+I for adding one space of identation to the selected block and Alt+U for removing one space of identation. P.S. I'd also recommend checking "Del removes blocks" (otherwise Del will remove just one character and not the selection),
•  » » » 6 years ago, # ^ |   +13 Thanks a lot :)
•  » » » 5 years ago, # ^ |   -10 How can I select a block to delete? Ctr + A is useful but I can't select a block which I want to delete.Please Help :)
•  » » » » 5 years ago, # ^ |   +10 As you would do in almost any Windows editor (Word, Notepad, Notepad++): hold Shift (current text cursor position will be selection block's start) and move text cursor with arrows/Home/End/PgUp/PgDn/etc to choose selection block's end.
•  » » » 5 years ago, # ^ |   -10 What's the meaning of [x] before the setting operations?
•  » » » » 5 years ago, # ^ |   0 [ ] is like a checkbox in GUI — it's either unchecked ([ ], meaning "option is disabled") or checked ([x], meaning "option is enabled").
•  » » » » » 5 years ago, # ^ |   0 I still have a problem to set Macro so that I needn't to input a long instruction to compile or compile and run my cpp files, can you tell me how to do it?
•  » » » » » » 5 years ago, # ^ |   0 You'd better use file associations for that. What exactly do you want your macro to do and in which situation?
•  » » » » » » » 5 years ago, # ^ |   0 As your suggestion, I want to compile and run my program just type Ctrl + F9(for example) with defined Macro, so where and how should I to edit my Macro?
•  » » » » » » » » 5 years ago, # ^ |   0 Macros work on very low level: they just emulate key presses. So, for example, macro configured to compile and run from inside the editor won't work in other situations (moreover, it would do something ridiculous).You start from the situation where you want to run your macro, press Ctrl+Shift+dot once, then perform all necessary actions to compile the program (avoid typing filename, for example, as it may be different in different times), then press Ctrl+Shift+dot once again. Then set a hotkey for the macro. Then, whenever you will press that hotkey, your macro will be played.You will probably get something like Escape; Enter — exit the editor, then compile the file (via file associations).
•  » » » » » » » » » 5 years ago, # ^ | ← Rev. 2 →   0 How would you accommodate for different file names? Additionally, how would you delete the entire line the cursor is at? Ctrl+Shift+Backspace tends to be too time consuming.
•  » » » » » » » » » 5 years ago, # ^ |   0 If you talk about file associations, use special symbols (press F1 in the "Edit file association" window to get help — English is available as well). The most useful is ! — file name without extension. So, my compilation command is g++ !.cpp -o !.exe -ggdb -DDEBUG -std=c++11 -O2 -Wl,--stack=256000000 -Wall -Wextra -WshadowCtrl+Y deletes current line. Again, you can get list of hotkeys by pressing F1 in the editor.
•  » » » » » » » » » 5 years ago, # ^ |   0 How to install that g++ thing? I downloaded installation file from here https://sourceforge.net/projects/mingw/ and then marked all stuff in "Basic Setup" and installed it. I didn't restart computer, but Far Manager still doesn't recognize g++ option.
•  » » » » » » » » » 5 years ago, # ^ |   0 @IAmNomad you must set the path in your environment variables(in windows) to that of the bin folder of mingw. You can google setting up a path for gcc to get a detailed solution. After setting the path I think a restart of FarManager is enough(I am not sure for me I had sublime and restart was enough).
•  » » » » » » » » » 5 years ago, # ^ |   0 Thanks, worked!
•  » » » » » » » » » 5 years ago, # ^ | ← Rev. 2 →   0 Why does error "The procedure entry point __gxx_personality_v0 could not be located in the dynamic link library C:\Work\sol.exe" occur?
•  » » » » » » » » » 5 years ago, # ^ |   0 Solution is easy: add -static-libgcc -static-libstdc++
•  » » » » » » » » » 5 years ago, # ^ |   0 I know this is a little late but I can't seem to locate this in the English documentation.How do you find the absolute path of a file in far manager and push it to the clipboard?I have seen on multiple screencasts of yours and Gennady's that you copy the path of a file from Far and paste it into the website for quick submission.
•  » » » » » » » » » 5 years ago, # ^ | ← Rev. 2 →   0 Looks like you can press Ctrl+Alt+Insert to copy full path of the selected file into clipboard. I didn't know that yet, thank you! Found that under F1 — Keyboard reference — Panel Control.My previous workflow was to put selection on .., press Ctrl+Enter to type full directory path in command line, then press Ctrl+Insert to copy command line's content into clipboard, then press Ctrl+Home to move cursor to command line's beginning and finally press Ctrl+K to remove everything in the command line till its end. Now I have directory's path in the clipboard, I can paste it into file selection dialog and the select the file with mouse.
•  » » » » » » » » » 5 years ago, # ^ |   0 for example, I set ctrl + F9 equals "g++ !.cpp -o !.exe -ggdb -DDEBUG -std=c++11 -O2 -Wl,--stack=256000000 -Wall -Wextra -Wshadow", when I was editing A.cpp, I ran ctrl + F9, but nothing happened, why?
•  » » » » » » » » » 5 years ago, # ^ |   +3 How exactly did you set Ctrl+F9 to run something? Maybe it's for file panes only?
•  » » » » » » » » » 5 years ago, # ^ |   0 yes, I set it at file panes, what's the correct way to set it? thanks
•  » » » » » » » » » 5 years ago, # ^ |   +4 How exactly did you set Ctrl+F9 to run something?
•  » » » » » » » » » 5 years ago, # ^ |   0 press ctrl + shift + dot and then press all the compile command and press ctrl + shift + dot again and then enter ctrl + F9
•  » » » » » » » » » 5 years ago, # ^ |   0 I see. It's called a macro, and it simply remembers what keys you've pressed and repeats them once you press Ctrl+F9. Say, if you've recorded these commands while being in the file pane, they probably do something very stupid when being run from the editor.
•  » » » » » » » » » 5 years ago, # ^ |   0 SO what's the correct way to do this ? QAQ
•  » » » » » » » » » 5 years ago, # ^ |   0
•  » » » 4 years ago, # ^ |   0 How can we use snippets (like in sublime text) in far manager?
•  » » » » 4 years ago, # ^ |   +3 I don't think it's a built-in functionality, but you may try plugins like True Template or Text Templates. I haven't used any of them, though.
•  » » » » » 18 months ago, # ^ |   0 Hi, I have a question. How do I install the True Template? I used the github files, but couldn't find any .dll files for the True Template. Hence, there still doesn't exist any Plugin Commands for the template in Far.
•  » » » » » » 12 months ago, # ^ |   0 I know its late but for anyone who has the same issue, this is the latest version as for now.. TrueTemplate-3.0.2.zip
•  » » » » » » » 12 months ago, # ^ | ← Rev. 2 →   0 oh, thanks a lot. btw, should i just extract them the files into the Plugins folder of Far Manager? UPD: yeah, it works. that's a relief.
•  » » » » » » » » 12 months ago, # ^ |   0 np, btw have you ever faced crash while saving file with F2 key? Its really annoying me during live contests(crash has managed to happened at the worst possible time multiple times now) and i dont want to switch to vim permanently :(
•  » » » 13 months ago, # ^ |   0 sir yeputonsdon't we have auto completion and automatic templates in far manager ?
•  » » » » 13 months ago, # ^ |   0 Never heard of that and never used. Maybe there are some plugins.
 » 6 years ago, # |   0 How can I get output to console like codeblocks consolse?
 » 5 years ago, # | ← Rev. 2 →   0 Well, it was not me who started necroposting. Rumors there are, FAR is now available for Linux
 » 5 years ago, # |   0 When I was to use Linux I used gedit with MC! Anyone else who was to do the same?Sneha!Linux VPS Hosting
 » 3 years ago, # | ← Rev. 2 →   +8 Well,when I When I type a newline，the cursor will always return to the beginning of the line.How can I solve this problem?In my opinion,when I type a new line ,the cursor will align with the previous line.I want : for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ } } but not : for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++){ } } 
•  » » 3 years ago, # ^ |   +16 Enable autoindent feature in the editor settings.
•  » » » 3 years ago, # ^ |   -13 thanks，I did not read all the above exchange,yeputons had already solved this problem ,he said F9 — Options — Editor settings. I'd recommend checking "Auto indent" and adjusting "Tab size". You can also use Alt+I for adding one space of identation to the selected block and Alt+U for removing one space of identation.P.S. I'd also recommend checking "Del removes blocks" (otherwise Del will remove just one character and not the selection),
 » 3 years ago, # | ← Rev. 2 →   0 Hello, can someone help me out with this small issue? When i run my c++ program, the output flashes and goes away. What do i do? Also, how do i use the command line mode to type commands?
•  » » 2 years ago, # ^ |   0 press ctrl + o on windows to switch to cmd view
 » 3 years ago, # | ← Rev. 2 →   0 nice tutorial
 » 2 years ago, # |   0 I can't seem to compile my C++ program when following Hernan's instructions. I have the right g++ and gdb. Can someone help me? Thanks in advance.
 » 2 years ago, # |   0 Far is great. However I cant use Auto Bracketing which was my favourite feature. Has anybody solved this issue?
•  » » 2 years ago, # ^ |   0 I dont think so you can use auto bracketing in far manager.
 » 19 months ago, # |   0 How do I comment multiple lines in Far Editor?Ctrl+/ isn't working
 » 18 months ago, # |   0 Hi, is there any way to suppress "all warnings being treated as errors"? I use pragmas for simple optimizations, however, Far Manager treats these warnings as errors and doesn't allow the cpp files to get compiled.
•  » » 18 months ago, # ^ | ← Rev. 2 →   0 Maybe you are using this compiler option: -Werror [Make all warnings into errors] Make sure to remove that
•  » » » 18 months ago, # ^ |   0 Thanks for the info, it works now.
 » 18 months ago, # |   0 I think this is the one tourist uses as his Editor
•  » » 18 months ago, # ^ |   0 Don't you think tagging him is unnecessary :/
 » 12 months ago, # | ← Rev. 3 →   -10 .
 » 12 months ago, # |   -17 yeputons sir, My Far Manager crashes sometimes when i save changes made to my code and then i have to restart far and the changes which i made are not saved and i cant find anything on the internet...unfortunately, i cant keep using far during contests if this continues, please help.
•  » » 12 months ago, # ^ |   0 If someone is facing a similar issue, I was previously running Far from the shortcut I pinned to my taskbar but now I always run Far from CMD and it has never crashed since, so that's that and finally, many thanks to this wonderfully supportive thread.