I usually work with a text-editor and a terminal in order to compile or to launch programs; in addition to that, I often need a web client for consulting offline documentation.
I decided to write my own developpment environment, providing me all the tools which are directly accessible from inside my editor.
From this idea is born IT-Edit...
|
it-edit version 3.0 requirement:
libgtk-3 (>= 3.20 ; Else use an older version of it-edit )
libgtksourceview-3
libvte-3.0
libgspell-1 (optionally for spell check support).
The new version of it-edit provides as new feature:
- Session management:
which permit to reload the last:
- Files.
- Documentation.
- Applications.
The session management can be either:
- Automatic.
- Asked to the user by exit.
- Disabled.
- Spell check support:
- In-line spell check (The misspelled words are underlined and can be corrected through the contextual menu).
- Spell check dialog
- And some other adding to it-edit...
it-edit provide a text editor with syntax highlight, line numbering and with the basics text editing functionalities:
- Cut, Copy and Paste.
- Duplicate a line or the selected text.
- Undo/Redo functionalities.
- Search and replace functionalities.
- Jump to the given line number.
- Enable | Disable in-line spell check.
- Enable | Disable the use of tabs.
And an files managing interface for:
- Open a new empty file.
- Open the file you want.
- Open an recent file.
- Save the editor content.
- Save the editor content as the filename you want.
- Save all open files.
- Close file.
- Close all file(s).
- Reload session.
- Reload current file.
- File informations.
it-edit provide terminals in the same window as the editor, as a sidebar, which can easily shown, hidden and resized.
You can add and remove as many terminals as you want to the sidebar...
it-edit provide a big terminal occupying the full interface, dividable into 4 resizable terminals, to which you can easy toggle from the main window.
In order to execute commands like compilation or debugging or any terminal command you want. You can launch it directly from the editor.
I intend to implement an manpages reading interface, in an toplevel terminal window (so it can be resize, minimize, maximize and closed),
but i remark by implementing it that i restrict the command to execute the man [section] page command.
So i decide to provide the same functionality but without restricting it to the manpage displaying, to expand it to execute any command you want in an toplevel terminal.
It result in a functionality to execute a command in a toplevel terminal, which can be resize, minimize, maximize and close.
After the execution of the command the toplevel terminal is yours and can continue to enter commands...
I intend to implement launching of registered offline HTML documentation in a toplevel window,
but i remark by implementing it that i restrict it to offline HTML pages.
So i decide to provide the same functionality with registering any file you like.
The registered files are launched with the default program for this filetype.
After registering the files, you can easy launch it and access them all directly from it-edit.
I want to launch necessary GUI tools directly from the editor.
So it-edit permit to register the application you want to get direct access to it from your editor.
Like: A GUI diff tool, A GUI debugger, a smart python interpreter, a calculator, a color picker, a dictionary, and so soon...
You can start it-edit from a terminal with a list of space-separated filepath (it-edit support many filetypes), as arguments which will be opened in the editor at start.
To know for files managing:
- Open a new empty file by using the menu item, the button or the shortcut: Ctrl + n.
- Open file(s) by selecting it or them with the file selector, use the menu item, the button or the shortcut: Ctrl + o.
- You can open a recent file by selecting it in the list from the menu item.
- Save the current editor content by using the menu item, the button or the shortcut: Ctrl + s.
- Save all open files by using the menu item, the button or the shortcut: Ctrl + Maj + S.
- Reload last files will reload the last stored files: either in automatic storing case the last opened files or in user asking case the last user registered files.
- Reload file will reload the last saved version from the file in the editor, use the menu item or the shortcut: Ctrl + R.
- File informations will display informations, which you can edit, about the current file, use the menu item or the shortcut: Ctrl + I.
How to handle edition:
- Undo uses the contextual menu or the shortcut: Ctrl + z.
- Redo uses the contextual menu or the shortcut: Ctrl + Maj + Z.
NOTE: The menu items from Undo and Redo don't work well.- Cut uses the contextual menu, the menu item, the button or the shortcut: Ctrl + x.
- Copy uses the contextual menu, the menu item, the button or the shortcut: Ctrl + c.
- Paste uses the contextual menu, the menu item, the button or the shortcut: Ctrl + v.
- Duplicate the selection or the line at cursor position, use the menu item, the button or the shortcut: Ctrl + d.
- Enable | disable In-line spell check, use the menu item or the shortcut: Ctrl + w.
- Use space instead of tabs: for switching between tab use or not, use the menu item or the shortcut: Ctrl + P.
- Go to line number by using the menu item, the button or the shortcut: Ctrl + g.
Enter a valid line number and press Enter or the Apply button to move the editor into the wanted line. This line will be highlighted.- Find and replace functionality.
You can show | hide the search and replace bar by using the toggle button. The search and replace bar has got the following functionalities:NOTE: You can use the shortcut Ctrl + F instead of the button.
- Search button: this will highlight all the matching occurrence from the search term and moving the editor to the first occurrence position.
NOTE: You can use the shortcut Ctrl + Maj + F instead of the button.
- Next button: highlight the next matching occurrence from the search term.
The search will start at cursor position per default. Pressing Enter when the search entry field has the focus has the same effect, except that the search begin at file begin. If you select some text with the mouse and use the shortcut Ctrl + f. The search field will contains the selected text as search term and the search will start at your selection.NOTE: You can use the shortcut Ctrl + + instead of the button (Use the keypad).
- Previous button: highlight the previous matching occurrence from the serach term.
The search will start at the end of the file per default. If you select some text with the mouse and use the shortcut Ctrl + f. The search field will contains the selected text as search term and the search will start at your selection.NOTE: You can use the shortcut Ctrl + - instead of the button (Use the keypad).
- Replace button: replace the current matching occurrence, which is highlight, with the content of the replace field.
NOTE: You can use the shortcut Ctrl + Enter instead of the button (Use the keypad).
- Replace all button: replace all the matching occurrence in the current file.
NOTE: You can use the shortcut Ctrl + Maj + Enter instead of the button (Use the keypad).
- Mode: You can select how your search term(s) will be interpreted.
- Raw text: all search terms matching.
- Word boundary: The search term must be a complete word, not a part but an variable with separators like underscores or points will work too.
- Regular expression: Perl compatible regular expression (REGEX).
- Close button: hide the search and replace bar and clear the highlight.
NOTE: if you want to select some text with the mouse and use the Ctrl + f shortcut.
- The search and replace bar will be show.
- The search field will be filled with your selection.
- The search will begin at your selection position if you hit the Next or Previous button.
- Sidebar Terminals adding: You can add some terminals, 2 per item, to the sidebar, reorder them, and remove it.
Use the menu item or the shortcut Ctrl + Maj + T.- Big terminal(s) switch: You can switch between a very big terminal and a very big terminal divided into 4 terminals.
Use the menu item or the shortcut Ctrl + Maj + B.- Command execution: use the menu item, the Cmd button or the shortcut: Ctrl + e.
This will display a little toplevel in which you can enter a command. Then press the Enter key or the Apply button to execute the command in a terminal include in a toplevel window (so you can resize, minimize, maximize and close the window). NOTE: The command is executed with your default shell (it fails if the '-c' option is not supported). After the execution from the command the toplevel terminal is yours and you can continue to enter commands and use it as you want.- File Handler: use the menuitem or the shortcut: Ctrl + h.
For using this features you must register files from the Files handler manager tab interface reachable through thesettings->Configure program
menu item. For registering a file you must give it a title which will appears as the button text in the File Handler window and selecting the corresponding file. Then wenn you press the button in the File Handler window, the file will be launched with the default application for this filetype. NOTE: this feature can be used for any use you want. Previously, it was created for fast access to offline html-documentation, but in the meantime it has been expanded to any type of file (for example, consulting pdf documentation). The registered files can be removed from the File Handler list through the same interface with which you add it.- Application launcher: use the menu item or the shortcut: Ctrl + a.
This will display an application chooser. By selecting an application you will launch it.- Dialog spell check by using the menu item or the shortcut: Ctrl + Maj + w.
it-edit will auto-detect following external applications at the first start:
- Programming tools:
- A GUI diff tool:
kompare
,meld
,fldemff
,diffuse
.- A GUI debugger tool:
ddd
,xxdbg
.- A GUI python interpreter:
pycrust
,idle-python2.7
,dreampie
,idle-python3.4
.- A GUI generator:
glade
,wxglade
.- A developer helper:
devhelp
.- Utilities:
- A GUI calculator:
galculator
,kcalc
,speedcrunch
.- A GUI color picker:
gcolor2
,kcolorchooser
,gpick
.- A GUI dictionary:
goldendict
,stardict
,opendict
,babiloo
.- A file manager:
nautilus
,dolphin
,thunar
,xfe
,pcmanfm
.- A GUI notetaker:
keepnote
,bijiben
,gnotes
,xpad
,kjots
,tuxcards
,rhinote
.- A GUI web browser:
firefox
,chromium-browser
,konqueror
.And register the match as a menuitem.Else you can set any of this tools after or register any tool you like in the Others categorieWhat make you a shortcut to quickly launch an applications directly from inside the editor.
You can set following view settings from the View menuitem.
- Big term Show | hide: use the menu item, the toggle button or the shortcut: Ctrl + B.
- Terminals show | hide: use the menu item, the toggle button or the shortcut: Ctrl + T.
- Button bar show | hide: use the menu item.
- Fullscreen toggle: use the menu item.
- Syntax highlight: use the menu item.
To set the syntax highlight on, on the current edited text from the supported language.- Editor schemes: use the menu item.
To set the appearance from the text editor. Currently they are 13 different schemes available:
- build.
- classic.
- cobalt.
- emacs.
- kate (default).
- matrix.
- oblivion.
- slate.
- solarized-dark.
- solarized-light.
- tango.
- turbo.
- vsdark.
Each time you change the scheme your choice is registered so that you don't have to change it every time you start it-edit.NOTE: the application use a personnal set of schemes files: the set from the latest version from the gtksourceview-3.0 library and find on the web.
Access to the program configuration window which is divide into 6 part:Editor settings:
- Use scheme (kate per default).
- Display lines numbers (Enabled per default).
- Display TABS characters (Enabled per default).
- Show all spaces (Disabled per default).
- Use auto-indent (Enabled per default).
- Indent width (2 per default).
- Use spaces instead of TABS (Enabled per default).
- TABS width (2 per default).
- Spell check language (install apsell, ispell or myspell dictionaries)
Files settings:
- Warn the user if he attempt to load a file already into the editor.
- Warn the user if he attempt to load a file which is read-only.
- Save a file despite a newer time stamp.
- Charset to use by file saving.
- Newline type.
- Permission by file saving.
- Warn the user by closing an unsaved file.
- Create a backup file by saving (Enabled per default).
- Remove trailing space at file saving (Enabled per default).
Terminal settings:
Appearance
- Font (Monospace 10 per default).
- Font scale (1.0 per default).
- Cursor type (BLOCK per default).
- Cursor color (white per default).
- Cursor blink mode (BLINK_SYSTEM per default).
- Background color (Black per default).
- Foreground color (White per default).
- Allow bold (True per default).
- Bold color(White per default).
- Pointer autohide (Disabled per default).
Settings
- User shell (Default to your default shell).
- Start directory when you launch a terminal.
- Select by word char (Default to: -A-Za-z0-9,./?%:_=+@~). (No more available and automatic in version 3.0)
When the user double-clicks to start selection, the terminal will extend the selection on word boundaries.
It will treat characters included in spec as parts of words, and all other characters as word separators.
Ranges of characters can be specified by separating them with a hyphen.- Audible bell (Not available in version 2.0)
- Scrollback lines.
- Unlimited (Default).
- Settable to the value you want.
- Scrolling.
- Scroll on output (Disabled per default).
Controls whether or not the terminal will forcibly scroll to the bottom of the terminal when the new data is received.- Scroll on keystroke (Enabled per default).
Controls whether or not the terminal will forcibly scroll to the bottom of the terminal when the user presses a key.- Erase binding.
- Backspace key binding (Default to automatic).
- Delete key binding (Default to automatic).
File handler manager:
Here you can add and remove files for the File handler feature.Applications
Here you can define shortcuts for the applications you want.Settings
- Define the ratio main-interface and sidebar in form of a floating-point value between 0.0-1.0,
representing the surface the sidebar will cover and so the width of the sidebar terminals.- Show | hide the sidebar terminals at start.
- Show | hide the big terminal at start.
- Choosing to divide the big terminal in 4 at start.
- Toggle to fullscreen at start.
- Launch a command in the terminals at start.
- Set it-edit as your default editor or reset the settings.
Shortcut functionality Mnemonic Ctrl + n New file n = new Ctrl + o Open file o = open Ctrl + s Save file s = save Ctrl + Maj + S Save all files S = Save Ctrl + r Reload file r = reload Ctrl + i File informations i = Informations Ctrl + z Undo None Ctrl + Maj + Z Redo None Ctrl + f Find f = find Ctrl + Maj + F Find all F = find Ctrl + + (Keypad) Next None Ctrl + - (Keypad) Previous None Ctrl + Enter (Keypad) Replace None Ctrl + Maj + Enter Replace all None Ctrl + g Go to line number g = go to Ctrl + x Cut None Ctrl + c Copy c = copy Ctrl + v Paste None Ctrl + d Duplicate text d = duplicate Ctrl + p Use tabs None Ctrl + w Enable | Disable In-line spell check. None Ctrl + Maj + w Dialog spell check. None Ctrl + e Execute command e = execute Ctrl + y Copy file-path to clipboard. None Ctrl + Maj + Y Copy folder-path to clipboard None Ctrl + b Show | Hide big terminal b = big terminal Ctrl + Maj + B Switch big terminal features B = big terminal Ctrl + t Show | Hide sidebar terminals t = terminal Ctrl + Maj + t Add new terminals T = terminal Maj + Copy (Keypad 1) Copy from terminal None Maj + Insert (Keypad 0) Paste to terminal None Ctrl + h File handler h = handler Ctrl + a Application launcher a = application Ctrl + q Quit application q = quit
On-line notice:
Download notice:
Read The Doc notice:
it-edit html doc:
it-edit pdf doc:
ChangeLog to version 3.0:
Note: By debian and rpm packages the gspell-1 library is optional, so better install it before installing it-edit if you use the *.deb or *.rpm file.
debian package file.
Use gdebi (in preference) or dpkg to install the debian package !
sudo gdebi it-edit-3.0.deb # gdebi resolves dependencies. sudo dpkg -i it-edit-3.0.deb # dpkg doesn't resolves dependencies.
rpm package file.
- it-edit-3.0-1.noarch.rpm
NOTE: If you get all requirements installed but the rpm program refuse to install it-edit: try the --nodeps switch.
Tarball file containing the sources from it-edit: An autotool implemented building system Linux and POSIX Compliant systems (not tested).
- To install on Linux and POSIX compliant systems simply type:
$ ./configure $ make $ make strip # Remove all unneeded symbols. $ sudo make install
Or if you can't install the gspell-1 library:
$ ./configure --disable-gspell-1 $ make $ make strip # Remove all unneeded symbols. $ sudo make install
github repository:
debian package file.
Use gdebi (in preference) or dpkg to install the debian package !
sudo gdebi it-edit-2.91.deb # gdebi resolves dependencies. sudo dpkg -i it-edit-2.91.deb # dpkg doesn't resolves dependencies.
Tarball file containing the sources from it-edit: An autotool implemented building system Linux and POSIX Compliant systems (not tested).
- To install on Linux and POSIX compliant systems simply type:
$ ./configure $ make $ make strip # Remove all unneeded symbols. $ sudo make install
Program: it-edit Versions: 3.0 Platform: Linux, and Posix compliant (not tested). Synopsis: An integrated terminal editor, fully adaptable to your requirement, with severals functionalities. Licence: GPLv3. Author: Eddie Brüggemann mrcyberfighter@gmail.com Corrections: Thanks to Gerald Dumas for his help into the it-edit project. Bugfix: Thanks to Mickaël S for his little bug-fix with big effects and the trailing spaces auto-removing idea. Thanks: Thanks to my beloved mother, my family and to the doctors. Advice: Stay away from drugs: drugs destroy your brain and your life.