Related
I'm looking for the tool for accessibility check (the system I'm working on should comply with WCAG2AA).
At the moment we use a code sniffer from squiz labs, which we manually run against our pages.
I would like to take it a step further and have it as a part of TFS gated checkin.
I'm aware this is not as trivial (we use ASP.NET MVC) and will require a browser engine to generate html as part of the same process. There also might be situations when a suppression would have to be added, etc.
Would be grateful if someone could point me in the right direction or maybe there is already a tool (in that case probably combination of tools), which I'm not aware of.
Accessibility checks can't be entirely made by automatic tools (it needs a human to decide if these headings make sense in a page for example), but it's still a great help for half of the tests you've to run.
I'm aware of:
Tanaguru, an open source solution that you can install (Java Tomcat thing) or run as a service. It'll check against your source code (before any DOM modification) many tests from Accessiweb reference list, an understandable (pun intended) implementation of WCAG2.0. The silver level is equivalent to AA level of conformance.
For Tanaguru service, you can provide a test login and password if your server is private and for the standalone code, being open source you can add it to your development process the way you want.
You can test Tanaguru here: http://my.tanaguru.com/?lang=en
WAVE Toolbar will run against code in your browser. This is a Firefox extension, beware that http://wave.webaim.org/ will check HTML code sent from server, not in the browser (the difference is about JS modifying the DOM)
Opquast is both a checklist about quality (accessibility and many other things unrelated, check it at least once it's worth it ;) and a paid service: Opquast reporting. You can run your pages against the Opquast checklist or Accessibility first steps and second steps (this is not WCAG 2.0, it's about the errors that are so obvious you should have repaired before going further with accessibility improvements).
Opquast reporting will export results as PDF, DOC/ODT as well as CSV so you can use it with your own automated test environment.
EDIT 2014: Opquast Desktop is a Firefox extension that'll test pages in your browser (there were a few quirks with Win8, be patient if it's still the case and they aren't on AMO because Mozilla will change their requirements overnight... but knowing personnally and having worked for the awesome team that is behind Opquast, I trust them)
Tenon.io by K. Groves is a new service I barely tested till now, but it's worth checking it
Related article: http://webaim.org/articles/freetools/ (quite old if it doesn't speak of WCAG 2.0, but formats and such are still an interesting read)
I do Ruby on Rails development pretty much exclusively. I currently develop in OS X using TextMate. I have a virtual machine running to emulate as closely as possible the environment my app will be deployed into, and I mount the code on a Samba share into OS X from the VM guest. From there I open with TextMate and code away.
I'm beginning to think that with the proper plugins and time spent learning, I could be much more productive in vim directly on the VM. Right now my TextMate is basically stock, though I do find the ProjectPlus plugin indispensable. What I'm looking for are some suggestions of vim resources and plugins (if that's the right terminology) to closely emulate the features I am unwilling to give up in TextMate. Or at least, compelling reasons why I should be willing to give them up. Here's a short list:
Ability to have a (preferably) collapsible project tree visible either at all times or easily toggle-able.
Ability to see SCM status at a glance, either within this project tree (preferable) or otherwise. (I use git almost exclusively if this makes any difference.)
Being able to view a side-by-side diff from within vim would be great too
Ability to search through the entire project at will (I suppose :stop; grep -nr; fg; would accomplish this, unless there's a better way to do it.)
Code completion, if possible
The NERD Tree plugin gives you a collapsible project tree. Personally, I find that the netrw plugin is more than sufficient, and this usually comes installed with Vim. Whereas the NERD tree feels as though it tries to emulate the behaviour of other IDEs (and TextMate's project drawer), I feel that the netrw plugin does things the Vim way. I suggest you try both out, and see which one you prefer.
The fugitive plugin provides a git interface to Vim (See Vimcasts: parts 1, 2, 3, 4 and 5).
The ack plugin is great for searching an entire project. You'll want to read up on Vim's quickfix list to get the most out of this.
TextMate's word completion is triggered with esc, and shift-esc. In Vim, you get similar autocomplete functionality using ctrl-n and ctrl-p in insert mode. Check :help ins-completion for (much!) more info.
I am running a series of screencasts about learning Vim over at vimcasts.org. My background is with TextMate, but I've been using Vim fulltime for a while now. As I write this, I'm only 6 episodes in, but I do plan on covering each of the points you've raised in future episodes. I'll try and come back to edit this answer with links to the screencasts as they become available.
And snipMate : TextMate-style snippets for Vim
I'm currently in a similar position to you (moving from TextMate to Vim)
One really good resource is this:
http://robots.thoughtbot.com/post/166073596/intro-rails-vim
Good luck with it!
For file navigation is simply love CommandT
This functions very much the same as the beloved commandT function in textmate.
You might want to start with my Ruby/Rails related vimfiles which includes support for rvm and git.
This screencast is great as well http://blip.tv/file/1372096
I do use VIM and i specially like how to rotate from model/view and controller related..
Check out the blog post: From Textmate to VIM for Rails coders.
The comments there may also valuable for you.
All of the other answers plus:
Ability to have a (preferably) collapsible project tree visible either at all times or easily toggle-able.
The project.vim plugin doesn't really work like TextMate's Project drawer but it's close.
With NERDTree, you can setup bookmarks and make it work a little like a project drawer.
:help mkview and :help mksession can help, too.
Ability to see SCM status at a glance, either within this project tree (preferable) or otherwise. (I use git almost exclusively if this makes any difference.)
vcscommand.vim provides the same set of commands for multiple SCMs, it works with Git, SVN, Mercurial…
You can use the aforementioned fugitive plugin to display the Git status in the status line, :help fugitive-statusline.
Being able to view a side-by-side diff from within vim would be great too
fugitive provides the :Gdiff command that does just that.
A recently released plugin called Gitv tries to emulate GitK in Vim. I like it a lot and the author is very responsive. In the tree view, hit <CR> to open a previous commit in another window and D to see a double diff.
Code completion, if possible
There are a few solutions, if you don't need it to be automatic <C-x><C-o>, <C-n> and <C-p> will be more than enough, if you want "autocompletion" you may try these few plugins. My favorite is autocomplpop.
Search an entire project here.
Code completion: Normally done with ctrl-X then ctrl-O while in insert mode.
Git Integration: git.vim
Project Tree: Nerdtree.vim
Good luck
I published an extended post on this topic today, in which I explain how to replicate 100 features from Textmate within VIM. It's the product of a great deal of hours research.
For example I explain:
How to replicate a Project Drawer
How to manage tabs
How to do Rails specific commands (Lets face it: A lot of Textmate users are Rails programmers)
How to do find and replaces
How to do project wide searches
Read Original Article: Textmate To VIM
I was originally going to frame this question around TextMate, which is by all accounts an amazing editor, but only available on OSX. I was curious how those who have spent time learning to use TextMate efficiently deal with the situation where they have to edit on a non-OSX platform. But it's really a more general question. How do people deal with situations where you can't use your preferred text editor?
I use gvim and vim primarily, and I know that these editors have a rather esoteric set of keybindings, so when I'm editing in another editor I'll often mistakenly type things I didn't want to type while trying to navigate. This can be very inefficient.
So how do people deal with these kinds of situations? Just swallow the inefficiency? Try to avoid the situation or go to great lengths to get the file that needs editing into your preferred editor? Do you have one or two editors you're proficient with that you can switch between without problems? Do you change the keybindings of other editors to more closely match your preferred editor?
I work as a support technician, which means I'm frequently working on customer systems remotely. The unfortunate side effect is that I rarely have any choice over what editor I get to use in those situations. Generally speaking there's not a whole lot you can do about it unless the situation is one where it's feasible for you to install a new editor or bring a USB thumb drive or something similar with your editor pre-installed on it. In such a situation, by all means, if you plan to be working for an extended time period, take advantage of the opportunity. You'll work faster and more efficiently and it will be less frustrating.
In an environment (e.g. webex/RDC) where you cannot install software or use temporary media, you have two choices: live with whatever editor they have, or copy files back and forth from your system. Typically if I'm doing very minor editing I just suck it up and use whatever editor is available. If I know I'm going to be doing an extensive amount of editing, I find a way to transfer the file I'm working on back and forth. This still stinks, forcing you to interrupt your editing flow with file transfers, but I find my sanity makes it worth not struggling with something like notepad to do real editing or programming.
The advantage of using either vim or emacs as an editor is precisely that it's available on virtually any decently configured Unix platform (and this includes more esoteric systems as well, e.g. Darwin/OS X). Combined with the fact that you can store your configuration online (e.g. Dotfiles) this makes for a very strong argument, because the problem you described simply doesn't exist.
Since I work primarily in a windows environment, I keep Notepad++ installed on a flash drive. That way I can just pop the usb drive into a machine and have a quality editor, without having to install anything.
On machines I'm using for longer periods, I use SciTE. I also use Dvorak keyboard. When guesting on machines, everything is different anyway as the keys are in illogical places. I just edit with what's there, or pass the file to source control and edit on my machine.
I resort to using notepad on win machines at client sites. Especially since I know that installing anything is not an option and I know that notepad will always be there.
For me the only time this happens is when I'm using someone else's system since I typically install a text editor that I am reasonably familiar with on each system that I own/use regularly. In that case, if I'm struggling too much, I move over and let the other person take the wheel (keyboard). FWIW, I use TextMate (sometimes vim) on OSX, TextPad (sometimes Notepad or even Edit on servers not under my direct control) on Windows, and vim on Linux.
I got comfortable with a couple different editors - vi, eclipse, and PFE. If I'm using some other editor short-term, I just deal with it. If it's longer term, Google is my friend, and I go download one I like.
On windows i convince everybody to install notepad++
On mac TextMate rules
On linux vim
I use vi under linux and Ultraedit under Windows.
Vi is a must if you are doing some linux administration or if
you are working directly in a shell.
A mouse oriented editor is useful if you are working under a
windowing system.
Anyway, I think you need to know the basics of both.
I work regularly on Linux and Windows, and occasionally on OS X. Having to switch editors between them is a pain, so the obvious solution would be using some cross-platform editor. Right now I'm experimenting with Komodo Edit, which looks pretty promising.
If there's no decent editor in the machine, it doesn't take long to download and install one.
If you are programming under windows you might want to take a look at e text editor its basically TextMate for windows and supports the bundles and everything.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
I'm not sure if many people know about this text-editor?
jEdit was kinda big in 2004, but now, Notepad++ seems to have taken the lead(on Windows)
Many of the plugins haven't been updated since 2003 and the overal layout and usage is confusing...
I'm sure jEdit has many nifty features, but I'll be damned if I can find out where to find them and how to use them. Reading that manual is a fulltime job on it's own.
I've been using jEdit for a few years now, mainly on windows, but also on Ubuntu.
I use it for: SQL, awk, batch files, html, xml, javascript...
Just about everything except .NET stuff (for which I use Visual Studio).
I love it.
summary
I use jEdit because it has the right balance for me of ease of setting up vs. features and customisability. For me, no other editor strikes quite as good a balance.
cons
It can be a bit hard to make it do the things you want.
pros
I love the plugins
Being able to define my own syntax highlighting etc. is just what I want from a text editor.
The manual is very good and quite readable. I strongly suggest reading it through to get an idea of what jEdit can do for you. (In fact, I suggest this for any software you use)
It's cross-platform. I used it just on windows for a long time, but now I also use Ubuntu, and it works there: I can even copy the configuration files over from my windows machine, and everything works. Nice.
other editors
In the past I did take a look at Notepad++, but that was a while ago, and it didn't have a nice way to define your own syntax highlighting, which is important for me. I also paid for Textmate and UltraEdit at different times (both very good), but in the end, jEdit comes out on top for me.
I also used Eclipse for a year or so. It's fantastic, and it'll do anything you want, but you have to be really into Eclipse to get the most out of it.
I've occasionally wondered about the same thing (what happened to jEdit - though I'm not sure if that was your main question).
Apparently, the main developer, Slava Pestov, left the project in 2006 (to focus on Factor, and his studies), and the jEdit development has never really picked up again after that. Which is a shame. :/ (I haven't actually followed closely, but I guess it's telling that there has not been a major release of jEdit in the last 4 and half years.)
Now, while googling around, I found some info written by Slava himself. It seems at that time he not only gave up jEdit, but developing in Java altogether, after becoming "increasingly frustrated" with the language.
I've been using jEdit since 2003ish. I use it on my Ubuntu 8.04 box at home, however it does have a few bugs: sometimes when you click on a button which opens a dialog, such as "Open File", the dialog will be completely blank.
This could be a Java thing, but it seems a strange issue.
Other than that, I'm quite happy with jEdit - it's the best general editor I've found (so far) for Linux (ducks as hordes of Vi and Emacs users light up their flame cannons)
I like the XML Editor plugin: auto-completion when you close XML (including HTML) tags, plus if you specify a DOCTYPE it gives you auto completion.
There is also a handy plugin for visually viewing diffs between two files.
jEdit is by far, my prefered editor since 2010. It has a unique set of features that I didn't found in any other:
Multi OS: Win, Linux, Mac.
Portable: Just copy a folder and it is ready to use. All settings are kept in .XML and .properties files inside jEdit subfolder. This is crucial if you don't have admin rights on your enterprise workstation.
Search-Replace: The most enhanced I've seen in a text editor: Full Regex specification with Bean Shell scripting capabilities for back references. For instance: Let's say you want to apply an increment on every number found in your text (replace 1 by 2, 10 by 11 and so on). Just search for regex "(\d+)" and replace by a Java expression "Integer.parseInt(_1) + 1". It's just a simple example, but enough to show how powerful it is.
Database: Just select your SQL statement, press a button and get the resultset from MySQL, MsSql, Oracle, Teradata and any other Jdbc compatible RDBMS. Export results to csv. Works like a multi-database command line tool. Browse and navigate on your database schema. (SQL plugin).
Customization: Here is where jEdit shines. There are tons of features. The highlight is the ability to use any java API to expand it! Access them from your Beanshell scripting macros. Example: I needed a function that decode selected text from/to mime64. No problem! I Just downloaded a library from commons.apache.org and accessed it from a jEdit macro. It's just unbeliveable how expandable jEdit can be with this feature.
Highlight: Select a word or phrase and it is highlighted right away in the entire text. The mini-map of ocurrences is shown in the scrollbar. It allows quickly find, for example, a respective css style in separated file just using the mouse. No need for Ctrl+F or type anything. It works even on ordinary txt files. (Highlight Plugin)
Plugins: FTP, XML, Text Diff, Themes, Text Tabs, Highlighter, character map, Mail, Whitespaces, Abbrevs, Minimap...there are hundreds of them.
There are dozens of other nice features that I won't describe here in order to keep this answer not too long. The complete article can be found here and the mime64 example here.
At first glance, jEdit is just another text editor. The full capabilities come into light when you start playing with it's endless customization/expansion power. My initial reluctance of accepting a java-written text editor disappeared when I realize that only a java text-editor could be so extensible. Its initial drawback turned into it's main advantage.
I have been using jEdit for the last five years. And I agree with Mr. Mahan's comment above, jEdit has reached the "just works stage" and does not really need anymore development.
I mainly use it for PHP web development and have tried everything from commercial IDEs (DreamWeaver) to php designer, NetBeans, Eclipse, Apanta and Notepad++. And nothing comes close for customization possibilities. If the plugin does not exist, chances you can whip something together with a BeanShell Macro (assuming you want to dig into Java).
On Windows I use Notepad++ as well, but mainly as a Notepad replacement (I even renamed the notepad.exe)
At the end of the day it comes down to taste. What is important to you and what will make you more productive. A distracting GUI and fluffy features can take you away from what you should be focusing on.
And to boot I have converted a few developers to jEdit along the way.
At the risk of performing necromancy:
Because of the way it's been released the last decade or so, major Linux distributions usually lag quite far behind the latest stable version. The good news is that there are repositories to install and upgrade it automatically on Ubuntu and more.
For a couple years I shared configuration files between Windows, FreeBSD and Linux without problems. That's more than I can say about any other application I've ever used.
The only issue I've heard about is that it used to be slow back in the dawn of time. Now it's really fast.
Encodings and line endings are handled more seamlessly than any other editor except IntelliJ IDEA.
Vertical editing. Just hold down Ctrl and drag to create a rectangular (or even a zero-width vertical) selection.
Better search and replace than any other editor ever except IntelliJ IDEA. I just started writing a list, but it has to be seen to be believed. Just Ctrl-f and see for yourself.
I had to use during my vocational education for XML and XSLT. It had a lot of bugs and didn't work always. I couldn't get to like it, but if I had to test some XSLT I'd give it another shot. I found Notepad++ and I am more than happy with it for what I need.
To your question: Did you take a look at jEdit's plugin list? There are some plugins released 2008 and the latest version was released on 8th August 2008.
Myeah, I just installed the 4.3pre15(latest) and it does look a bit better.
Super feature is the automatic XML DTD creation you can get from one of the plugins.
Now THAT is awsome, especially for big files
After many years, jEdit remains my favorite free validating XML editor. I love the seamless combination of XML validation with plain-text editing features such as regex search-and-replace across multiple files.
I have used jEdit for a number of years, both on PC and Mac (a bit funky on the Mac).
Currently I use it primarily as a folding editor for a number of on-going documentation notes. I have use the folding at the text indent levels - an easy way to collapse and expand file sections, without any work to set up each section.
The feature I really like are the command shortcut alternatives you can set up, the tool bar icon control, and the the abbreviation expansions. The Plugins I especially favor are the BufferTabs to display rows of file/buffer names, and the Whitespace and TextTools.
I recently loaded the GroovyScriptEngine, in part because of the syntax coloring and control for groovy. I set up 2 seperate jEdit versions, in part to maintain seperate history lists, as I update a few dozen files repeatedly.
I loved Notepad++ on windows, but when I made the switch to Mac I was left behind. Since then I have been in tune with utilities that work across multiple platforms so that is why I switched to JEdit over 2 years ago and I have been loving it ever since. It works flawlessly on my Mac, never crashes, is fast, and has many many add-ons. It is based on Java so it works on many different platforms. I think Jedit is equal to or better than Notepad++
My favorite plug-in is the FTP module. I can open, edit and save files on my FTP server just as easily as if they were local.
What Windows code editors allow the use of elastic tabstops, either natively or through a plugin?
I know about a gedit plugin, but it only works on Linux.
Code Browser may be the first for windows. I would love to see this feature as a plugin for other editors as well.
I did quite a bit of googling trying to find this answer. There are plenty of people asking for it:
http://developers.slashdot.org/comments.pl?sid=414610&cid=21996944
http://www.arguingwithmyself.com/archives/75-the-biggest-feature-your-editor-is-missing
http://intype.info/blog/screencast-parser-in-editor/#comment-221
http://codewords.wordpress.com/2006/10/16/eclipses-achilles-heel/
just to name a few...
so I don't think one exists yet, sorry :(
Code Browser supports elastic tabstops, but it appears to be the only thing for Windows that currently supports it. Unfortunately, it has an unusual UI which may render it unsuitable for multi-person projects, and may even make it difficult for you to use even if no other editors are involved.
According to the elastic tabtops website, he's working on plugins for eclipse and Visual Studio 2010 (though the Eclipse plugin is stalled pending a bugfix, and jedit should support elastic tabstops in an upcoming version.
Finally, though this probably isn't an option, you could try running an x server (such as Cygwin/X or Xming on your Windows computer and ssh into a Linux client (either a virtual machine or another computer) to run Gedit. This approach has many problems though: you need to keep your files on a separate computer (perhaps using Dropbox to keep them in sync), X over SSH is notoriously slow, and you need either another computer or a virtual machine.
XMLQuire is an XML editor developed for windows to showcase virtual formatting. This concept goes a step further than elastic tabstops, indentation is simply a function of the position of the preceding line-feed character and the nesting level and context assessed by the parser:
It's the XML parser that determines the nesting level and therefore the required indentation, there's no reformat key or tab key to press, the XML formatting just reflows as you edit, drag and drop etc.
This means that XML is always properly indented, but without leading tabs or spaces. The concept should also work for more conventional code (except for languages like F# that exploit whitespace), but this has not yet been tried out.
Note that, unlike elastic tabstops, virtual formatting only works from the left-margin and only uses the parser context. The parser context is more than just about nesting level though, factors such as mixed content, node-type, length of parent element name and attribute name all come into the equation. This allows alignment of attributes and attribute values that occur on new lines also (as shown).
Word-wrapped text naturally just fits to the indentation scheme. If further text formatting is required then space characters are added by the user in the conventional way.
As with elastic tabstops there's a potential issue when virtually formatted text is opened in a more conventional editor. However, because no characters have been added for XML formatting (it was all virtual), conventional editors can simply apply conventional formatting according to the settings for that editor, uses tabs or spaces.
Here's a elastic tabstop plugin for Visual Studio 2010 by ferveo (Ramunas Geciauskas):
http://visualstudiogallery.msdn.microsoft.com/ccff2b55-201f-4263-aea5-3e66024d6c0e
Another option is jedit which has already added support for elastic tabstops. It is available on Windows, Linux, OS X, and Unix.
The problem is that only a few toolkits/platforms have text widgets that offer the ability to set non-uniform tabstops on different lines. To my knowledge, those toolkits/platforms are Java Swing (used by the demo on the elastic tabstops page), GTK (used by Gedit and the Gedit plugin), and apparently the new version of Visual Studio (VS 2010).
Expect to (eventually) see more developments on all of those platforms.
Textadept has an elastic tabstop plugin.
Atom also has a plugin.