|Submitted: Apr 11 2013|
Updated: May 23 2016
Homepage and download links have changed owing to my website host going tits up and down and up and down ...!
Development version is now available on Github for full dev version:
For just the gtkversion ( most current )
git clone https://github.com/KeithDHedger/KKEdit.git -b gtkversion --single-branch
Please see the BUGS-ETC file for instructions on reporting bugs etc.
Bugs reported on these boards or sent as PM's will be ignored.
New Plugin Page ( Available from the 'Help' menu ) :
Latest versions are on git hub here:
See the README file on how to compile/install plugins for gtk2 and gtk3.
Current plugins are:
Open URI -- NEW
Edit Remote File ( via SSH )
*** NEW ***
Forward/Back history now in Navigation menu or can be used from toolbar.
Regex error messages for badly formed search term.
Automatic ( selectable from prefs ) search for defines/gtk docs/qt5 docs/google.
Four most useful plugins now installed with main app:
Both gtk2/3 versions can be installed side-by-side.
*** NEW ***
Now gtk3 compatible just pass --enable-gtk3 to ./configure, you will of course need the gtk3 dev packages if your distro splits them out.
Both versions can be installed at the same time, but you also need to build and install the gtk2/3 versions of the plugins.
!!! IMPORTANT !!!
Plugin system has changed, if you have made a plugin see the example that is included, you WILL need to recompile your plugin.
Please see the in built help for details on how to interact with created documentation.
Doxygen support is still being added to, so requests and/or bugs will be appreciated, if you don't have doxygen installed you won't see the menu entry in 'Files'
I recommend installing Graphiz as well as Doxygen ( for the nice fancy graphics )
Also please check the built in help and the preferences after installing as some things may have changed.
!!! IMPORTANT !!!
Why another text editor?
Simple, I didn't like any of the others, anyway having used gedit for years it was getting increasingly difficult to keep it compiling without loads of gnome dependencies, looking around linux text editors seem to be VERY simple (leafpad) stupidly complex (GVim,Bluefish), trying to be all things to all people.
One of the best text editors I have used is BBEdit but that is only available on the mac, so I bit the bullet and decided to write my own with the best bits from BBEdit ( the name KKEdit is a tip of the hat to BBEdit ), gedit and leafpad. A simple uncluttered interface, no major dependencies, with just the features I use all the time, and TA DAH! KKEdit.
Some of the features:
Jump to function declaration.
Find Function declaration.
Find and open include file.
Run external tools.
Run external tool synchronously or asynchronously.
Pass selected text to external tools.
Find API declarations in installed Gtk-Doc's.
Full source code highlighted printing
+ The usual source view options, line wrap, line numbers etc.
!!! NEW !!!
Can now jump to line when opening file by add @LINENUM to end of filename eg:
!!! NEW !!!
Select a tab from the edit menu.
Open file from tab menu opens in adjacent tab.
Can now set max number of characters displayed in menus/bookmarks/popups etc, no more really long tabs!
Replace All now works on just the selected text, or the whole document.
Plugins can now be forced to add their main menus to a single global menu.
Massive speed increase in replace all.
Added colour button to prefs instead of having to use hex number.
Find/Replace now remembers the history ( amount remembered can be set in prefs ).
Find/Replace drop downs/entry boxes now combined into entry combo box.
Added standard command line options.
French translation added to KKEdit and plugins, big thanks to Thanh for that, ( french users send him a thank you email via the about box ).
Added code completion.
Can now turn off syntax highlighting.
Remembers size and position of inbuilt doc viewer
Can turn off checking for updates in prefs.
New add to custom wordlist in right click popup menu.
More accurate find definition search.
Completely redone prefs dialog.
New example plugin.
Boxes at the sides, top and bottom are now available for plugin use to add extra GUI items as well as menus.
Plugins can now use the external tool output pane to display info.
Plugin's can now be enabled and disabled without a restart.
New plugin page available see 'Get Plugins' from the 'Help' menu.
Now supports 'c' plugins.
Example plugin installed to /usr/share/KKEDit/plugins.
See the example plugin for details.
Added 'Highlight All' to find/Replace, highlights all matches until document is edited or you switch tabs.
Added 'Show/Hide Docviewer' to view menu.
Can now set a default graphical su at compile time ( can be over-ridden in prefs ).
'Back' is now global in scope and will switch between tabs.
Added preliminary support for doxygen.
Find definition is now MUCH better at finding a match.
Added status bar.
Added customizable keyboard shortcuts to main window and to external tools.
Can optionally open link to file like normal OR open from the real path.
New tab menu option 'Open' to quickly open other files in the same directory.
Find/Replace history drop downs.
User definable command for getting root privileges.
New 'Run As Root' option for external tools.
Switch to tab rather than open duplicate file (optional).
Silence 'File Changed' warnings (optional).
Added 'Back' button, back is individual to each page and only one level of back is available ( this may change ).
Aded 'Undo All' and 'Redo All' to Edit menu.
Added 'Copy Folder Path' to tab popup.
Added 'Clear tool output window' to external tools, allows for clearing the window before running the tool.
Added the source highlight type to the vars passed to an external script, and a new place holder.
Function list can now be sorted and categorized.
External tool list is now sorted.
New 'View Output' option for external tools to view the output of external tools in a at at the bottom of the editor.
You can now remove ALL bookmarks in one go.
Added a red warning style when running the editor as root ( if no style has been set ), just as a reminder.
Configurable toolbar - Add remove buttons, rearrange button order .
Added 'expander' to toolbar.
New View menu to toggle visibility of bookmark bar and toolbar.
Visibility of toolbar/bookmark bar carried over between sessions.
Comments now allowed in external tools.
Comments in external tools now show as tooltips.
Included new styles and a new external tool.
Bookmarks now toggled rather than added.
Added 'Toggle Bookmark' to context menu.
Can now change bookmark highlight colour.
Added bookmark icon.
Added a bookmark bar.
Added plea for money.
Please note old saved sessions are not compatible with the new version.
Added "Theme" to prefs.
You can now set the theme of the code to any standard gktsourceview style theme.
Added (optional) spell checking via aspell.
Check selected word or check document via tab menu.
configure with ./autogen.sh --enable-aspell
A deb package is available here:
Thanks to Sadi for supplying that, any query's about the package straight to him please.
Here is an ebuild for Gentoo users:
Thanks to Giorgianni giacomo for supplying that, any query's about the package straight to him please.
Replaced simple font name and size entry box in prefs with font select button.
Example tools now use relative paths.
External tools can now use relative paths to command script.
Standard text search OR regex search.
Opening non utf8 files now MUCH better.
Replace unprintable characters with "" allows opening SOME files containing binary data ( see the README file ).
Search and replace now uses simple regex expressions in both the search and replace text box's.
At the moment you can't use regex when finding backwards ( this may change ).
If manpageeditor is installed adds menu entry to launch it.
Added 'Always Show In Popup Menu' to external tools ( no selection needed ).
Redone some installed tools and example tools.
Can now use ./configure instead of autotools.
Added syntax highlighting drop down.
Add install instructions for debian/fedora users including dependencies, these users should read the 'INSTALL' file first.
Added 'New Editor' to file menu.
Added 'New Admin Editor' to file menu.
Gtksu recommended available here:
Now allows use of pipes in external tool commands.
Added command line switch (-m) to start new instance.
Added drag 'n' drop of files onto main text window to insert dropped file.
Added d'n'd selected text from other apps.
Can now hide show the entry boxes on the toolbar.
Added 'Live' search to toolbar just start typing to find, hit enter to jump to next or shift (on it's own) to jump to previous.
Bug reports and suggestions are welcome please see the about box for contact details and email me direct.
Webkit is now an optional dependency.
It is used to show the Gtk Doc API references if installed, else your default webbrowser will be used.
Changed format of session files, made future proof.
Matched version numbers in included plugins with main version.
Save/Restore session now saves/restores main window size and position.
Session manager now uses kkedit's save/restore session routines.
Added 'Hide Tab' to keyboard shortcuts ( defaults to ^h, 'Delete Word Under Cursor' now defaults to ^d ).
Restored missing translations.
Moving a line or selection with keyboard now keeps line/selection on screen.
Session restore and session manager now remember visibilty of tabs.
Fixed refresh bug.
Added 'Show All Tabs' to edit menu.
Added 'Hide Tab' to tab popup menu.
Search boxes on toolbar now always active.
Fixed replace all when replace string contains find string.
Lowered version numbers for vte lib for older distros.
Fixed some minor gtk2/3 filename clashes.
Fixed losing bookmark positions when replace all, replace all ( regex ) and revert file.
Fixed not updating status bar after showing all instances replaced.
Speeded up replace all.
Status bar in gtk3 version now smaller.
Tweaked installed styles to show 'whitespace' better.
Added 'Show Whitespace' to prefs and view menu.
Added 'Show Whitspace' option.
VTE dev files failure in configure now gives more details.
Back history now shows line:tabname - truncated line ( length of line is same as func def length ), in menu.
Added 'Online Help' option.
Added Back/Forward menus to toolbar buttons.
New icons for gtk3 version ( thanks to David Reimer for that ).
Supplied plugins are now also side-by-side installable for both versions.
More sensible default prefs.
File/folders renamed to make gtk3 version completly installable side-by-side with gtk2 version.
Added --enable-plugins to configure.
Added extra instructions to INSTALL for building with plugins.
Code clean to remove compile warnings for packagers.
Max forward/back history can now be set from prefs.
History now works much more like a browser and makes sense!
Increased Forward/Back history.
Fixed bug when removing certain tool items in prefs dialog.
'Back and 'Forward' now remember last 10 jumps.
Added 'Forward' to navigation menu and as extra button to toolbar.
Plugins are now whitelisted instead of blacklisted so new plugs have to be enabled from the plugin prefs.
Included plugins now built and installed globally with main package.
Added SessionManager plugin to main build/install.
Added FileBrowser plugin to main build/install.
Added ClipboardPlugin plugin to main build/install.
Added TerminalPane plugin to main build/install.
Added Auto search option to prefs, set to on ( defaults to off ) to automatically search function defs/gtk docs/qt5 docs/google when clicking "Definition" from toolbar.
Tweaked toolbar icons.
Selecting a tab from the menu now centres the current line.
Underscores in function/bookmark menu now shown properly.
Scroll current line on screen works better.
Adjusing tabs size now doesn't reguire restart.
Added notebook tab size adjustment to prefs.
Added extra debian instructions for gtk 3 in INSTALL ( thanks to Sadi for that ).
Squeezed tabs in gtk3.
Fixed setting font properly in gtk 3.
Added regex error message if badly formed regex search expression.
First run of gtk3 version now imports most settings from gtk2 version ( or vice versa ).
Changed 'Go To Define' toolbar icon.
First gtk3 enabled release.
Fixed saving window on exit for gtk3.
Fixed 'Open XTerm Here' script.
Fixed tag highlight all tag colours.
Done gtk3 colour select buttons etc.
Fixed gtk3 signals being mucked about with.
Fixed Regex search again!
Fixed empty shortcut key in external tools.
More gtk3 widget label nonsense.
Holding 'SHIFT' key when selecting 'Select Tab' from menu now moves the selected tab next to the current tab and selects it.
Tweaked tools install to reflect appname suffix.
Redone .desktop files.
Redone prefs toolbar customize.
Tweaked set menus/toolbar items sensitive.
Find higlighting now stays until a new find or switching tabs.
Fixed makefile uninstall.
Done code completion.
Launches correct version of pprgressbar.
Launches correct version (gtk2/3) from menu's new editor/new root editor.
Auto appends "-3" to name of executable's when installing for gtk3.
Removed split document view options.
Fixed minor bug not scrolling to line when jumping to function in file that needs to be opened.
Redone 'Go Back'.
Moved some routines to widget callbacks.
Redone setting menus/toolbar items sensitive.
Fixed some memory leaks when closing tabs.
Fixed jump to line entry box size.
Fixed occasional segfault on quiting when certain plugins enabled.
Added update-icons target to top Makefile.
Added hack to get round weird bug in gtksourceview-3.0 >3.14.0 not always getting correct undo/redo setting, menus for pkgs > 3.14.0 are not dimmed.
Fixed dNd for toolitems in prefs.
Moved prefs to either ~/.KKEdit or ~/.KKEdit3 depending on build.
Done doc viewer.
Open external apps done.
Basic navigation done.
Main menus done.
Started gtk3 enabled.
Fixed occasional bug when runing certain tools on files with no language type.
Removed forced CFLAGS and CXXFLAGS.
See Changelog file for complete details.