Farabi

 view release on metacpan or  search on metacpan

Changes  view on Meta::CPAN

    - Remove the '*' after the tab name after a successful save
    - First implementation of a save file action
    - Add modal dialog fade effect for all dialogs
    - Fix a bug with icon remove
    - Added the "new file" button which is shown to the right of the editor tabs (like chrome)
    - Smaller tabs

0.23  2013.1.2
    - Devel::REPL is now supported if installed as an internal in-process REPL
    - Disable all form submission to prevent UI from refreshing by mistake on ENTER key
    - When the a file is closed and it not clean we need to popup a save confirmation dialog
    - Various stability and refactorings into a better close file/files action
    - More fixes to the REPL dialog
    - Untitled editors are considered Perl by default
    - Close the last editor tab create a new Untitled one
    - Added * after an editor tab name if is modified
    - Add the initial implementation of save file
    - REPL command output is now readonly in REPL dialog
    - Added Close File and Close All Files.
    - Fix mode selection bug when open a file that is not perl
    - Added a feature to accept a directory parameter to find-file

lib/Farabi/files/public/assets/codemirror/addon/lint/lint.js  view on Meta::CPAN

    }
    if (options.onUpdateLinting) options.onUpdateLinting(annotationsNotSorted, annotations, cm);
  }

  function onChange(cm) {
    var state = cm.state.lint;
    clearTimeout(state.timeout);
    state.timeout = setTimeout(function(){startLinting(cm);}, state.options.delay || 500);
  }

  function popupSpanTooltip(ann, e) {
    var target = e.target || e.srcElement;
    showTooltipFor(e, annotationTooltip(ann), target);
  }

  // When the mouseover fires, the cursor might not actually be over
  // the character itself yet. These pairs of x,y offsets are used to
  // probe a few nearby points when no suitable marked range is found.
  var nearby = [0, 0, 0, 5, 0, -5, 5, 0, -5, 0];

  function onMouseOver(cm, e) {
    if (!/\bCodeMirror-lint-mark-/.test((e.target || e.srcElement).className)) return;
    for (var i = 0; i < nearby.length; i += 2) {
      var spans = cm.findMarksAt(cm.coordsChar({left: e.clientX + nearby[i],
                                                top: e.clientY + nearby[i + 1]}, "client"));
      for (var j = 0; j < spans.length; ++j) {
        var span = spans[j], ann = span.__annotation;
        if (ann) return popupSpanTooltip(ann, e);
      }
    }
  }

  CodeMirror.defineOption("lint", false, function(cm, val, old) {
    if (old && old != CodeMirror.Init) {
      clearMarks(cm);
      cm.off("change", onChange);
      CodeMirror.off(cm.getWrapperElement(), "mouseover", cm.state.lint.onMouseOver);
      delete cm.state.lint;

lib/Farabi/files/public/assets/codemirror/mode/apl/index.html  view on Meta::CPAN

        lineNumbers: true,
        matchBrackets: true,
        mode: "text/apl"
      });
    </script>

    <p>Simple mode that tries to handle APL as well as it can.</p>
    <p>It attempts to label functions/operators based upon
    monadic/dyadic usage (but this is far from fully fleshed out).
    This means there are meaningful classnames so hover states can
    have popups etc.</p>

    <p><strong>MIME types defined:</strong> <code>text/apl</code> (APL code)</p>
  </article>



( run in 6.049 seconds using v1.01-cache-2.11-cpan-364913b4093 )