Giter Club home page Giter Club logo

glavin001 / atom-beautify Goto Github PK

View Code? Open in Web Editor NEW
1.5K 46.0 453.0 3.59 MB

:mega: Help Wanted - Looking for Maintainer: https://github.com/Glavin001/atom-beautify/issues/2572 | :lipstick: Universal beautification package for Atom editor (:warning: Currently migrating to https://github.com/Unibeautify/ and have very limited bandwidth for Atom-Beautify Issues. Thank you for your patience and understanding :heart: )

Home Page: http://unibeautify.com/

License: MIT License

Shell 0.73% CSS 0.21% CoffeeScript 90.48% Common Lisp 1.57% JavaScript 6.48% R 0.12% Ruby 0.10% Emacs Lisp 0.30%
atom beautifier formatter coffeescript beautify prettifier prettify

atom-beautify's Issues

Less beautify error with Link style states

Hi,

I'm using atom 0.119.0 on Windows to format my less file. Whoever the output isn't exactly better at all. Also there is a bug when using statements as &:hover and &:link

                    a {
                        line-height: @headerHeight;

display: block;
                        padding: 0px 15px;
                        font-size: 16px;
                        button {
                            font-size: 16px;
                        }
                        &:link {
                            color: @white;

text-decoration: none;
                        }
                        &:visited {
                            color: @white;

                        }
                        &:hover {
                            color: @orange;

                        }
                        &.green {
                            color: @green;

&:hover {
                                color: @white;

background-color: @green;

                            }
                        }

&:hover and &:link become &:(space)hover and &:(space)link. Which doesn't compile anymore.

QUESTION: Line up . characters in Javascript

Hi,

Just downloaded your beautifier, it works wonderfully. I wanted to know if there is a way in the settings to have all .'s line up..

Current Code:

gulp.task('default', function() {
  return gulp.src(['./**/*.js', '!./node_modules/**'])
    .pipe(jshint())
    .pipe(jshint.reporter('default'));
});

What I would like:

gulp.task('default', function() {
  return gulp.src(['./**/*.js', '!./node_modules/**'])
                   .pipe(jshint())
                   .pipe(jshint.reporter('default'));
});

Is this currently possible?

Thanks!

Future maintenance

Hi @Glavin001 and @karolyi,

thank you both for the great work on this project in the last weeks. Amazing! As you've seen I didn't contributed a lot recently (say: nothing).

Reasons for this: little free time and little motivation, because Atom isn't my main editor. I've created this package even before I had access to Atom, because I wanted to test the APIs for plugins :) So I couldn't know if I like Atom from a user perspective or not beforehand. It's cool, but I still need more features and stability for my daily IDE.

To make a long story short: How should this project be maintained in the future? Does one of you would like to take the leadership? Should this project be maintained by an "organization"?

Greets and sorry for letting you down,
Pipo :)

Use Atom Packages Config Settings as default options

See https://github.com/taronfoxworth/atom-beautifier/blob/master/lib/beautifier.coffee#L70-L94

plugin.configDefaults =
  autoSave: false
  JsIndentSize: 2
  JsIndentChar: " "
  JsIndentLevel: 0
  JsIndentWithTabs: false
  JsPreserveNewlines: true
  JsMaxPreserveNewlines: 10
  JsJslintHappy: false
  JsBraceStyle: "collapse"
  JsKeepArrayIndentation: false
  JsKeepFunctionIndentation: false
  JsSpaceBeforeConditional: true
  JsBreakChainedMethods: false
  JsEvalCode: false
  JsUnescapeStrings: false
  JsWrapLineLength: 0
  CssIndentSize: 2
  CssIndentChar: " "
  HtmlIndentInnerHtml: false
  HtmlIndentSize: 2
  HtmlIndentChar: " "
  HtmlBraceStyle: "collapse"
  HtmlIndentScripts: "normal"
  HtmlWrapLineLength: 250

I know I liked atom-beautifier a lot more because I could easily edit settings in the Atom package settings panel. And so did this user: anaptfox/atom-beautifier#3 (comment)

@karolyi , thoughts?

.jsbeautifyrc doesn't support all 3 language preferences

I'm not sure if I'm doing something wrong because using a .jsbeautifyrc is undocumented, but from your source it looks like it should be loaded.

Repro:

Expected:

  • max_preserve_newlines is set to 1, so extra whitespace beyond 1 empty line should be removed

Actual:

  • No change aside from some punctuation shifting (oddly this doesn't occur in Sublime Text, which makes me think jslint_happy is also being ignored).

Rename .jsbeautifyrc to .atombeautifyrc

Hi @Glavin001 and @karolyi,

Before leaving (?) the project (#40) I have one last question/advice:
As you've added new languages we are in the need to clarify the relation to https://github.com/beautify-web/js-beautify.

The project started as an Atom wrapper for js-beautify, but it should be treated independent to js-beautify now.
We already added a non-standard .jsbeautifyrc (#9). I would recommend to deprecate the use of .jsbeautifyrc right now and introduce a .atombeautifyrc. This JSON file collects default settings which can be used for every language, but could be overridden for a specific language (and adds language-specific settings). Something like

{
 "_default": {
    "indent_size": 4,
    "indent_char": " "
  },
  "html": {
    "brace_style": "collapse",
    "indent_scripts": "normal",
    "indent_size": 6,
    "max_preserve_newlines": 1,
    "preserve_newlines": true,
    "unformatted": ["a", "sub", "sup", "b", "i", "u"],
    "wrap_line_length": 0
  },
  "css": {
    "indent_size": 2
  },
  "js": {
    "indent_level": 0,
    "indent_with_tabs": false,
    "preserve_newlines": true,
    "max_preserve_newlines": 2,
    "jslint_happy": true
  },
  "sql": {
    "indent_level": 0,
    "indent_with_tabs": false
  },
  "python": { ... }
}

You could even exchange js-beautify for a different beautifier for JS at a later state or use different beautifier for CSS and HTML, but still use it just for JS.

Just my 2 cents :)

Issues Beautifying LESS when using @variable or &:hover syntax

When using the beautify command on a less file, their seems to be issues with how items are restructured. I have no custom settings or overrides.

Note: The screenshots are missing the trailing } but it is included in the raw testing text.

Before Command

beforebeautifycommand

After Command

afterbeautifycommand

LESS for Testing

@import "syntax-variables";

.editor-colors {
  background-color: @syntax-background-color;
  color: @syntax-text-color;
}

.editor {
  background-color: @syntax-background-color;
  color: @syntax-text-color;

  .wrap-guide {
    background-color: @syntax-wrap-guide-color;
  }

  .indent-guide {
    color: @syntax-indent-guide-color;
  }

  .invisible-character {
    color: @syntax-invisible-character-color;
  }

  .gutter {
    background-color: @syntax-gutter-background-color;
    color: @syntax-gutter-text-color;

    .line-number {
      &.cursor-line {
        background-color: @syntax-gutter-background-color-selected;
        color: @syntax-gutter-text-color-selected;
      }

      &.cursor-line-no-selection {
        color: @syntax-gutter-text-color-selected;
      }
    }
  }
}

expose beautify settings

As mentioned here: #1 (comment)

It would be great to use a .jsbeautifyrc which looks like this (defaults):

{
    "indent_size": 4,
    "indent_char": " ",
    "indent_level": 0,
    "indent_with_tabs": false,
    "preserve_newlines": true,
    "max_preserve_newlines": 10,
    "jslint_happy": false,
    "brace_style": "collapse",
    "keep_array_indentation": false,
    "keep_function_indentation": false,
    "space_before_conditional": true,
    "break_chained_methods": false,
    "eval_code": false,
    "unescape_strings": false,
    "wrap_line_length": 0
}

And maybe .cssbeautifyrc and .htmlbeautifyrc, too. (Doesn't seem to be used by https://github.com/einars/js-beautify itself? See beautifier/js-beautify#391)

Changing indents to tabs even though my .jsbeautifyrc says otherwise

Hi Folks,

bit of a strange one here but I've only noticed it since i've updated to 0.3.3 (not sure if it was going on before).

here is the contents of my .jsbeautifyrc:

{
    "indent_size": 4,
    "indent_char": " ",
    "indent_level": 0,
    "indent_with_tabs": false,
    "preserve_newlines": true,
    "max_preserve_newlines": 2,
    "jslint_happy": false,
    "brace_style": "collapse",
    "keep_array_indentation": true,
    "keep_function_indentation": true,
    "space_before_conditional": true,
    "eval_code": false,
    "unescape_strings": false
}

but it is still replacing my spaces for tabs

https://cloudup.com/cz5VzNyU_ZB

... eh.. what? things just got even stranger. I don't really know why that happened (mixed tabs and spaces).

any logs i can do to help out with this one?

Unable to update to 0.3.4

You probably already know but looks like we are unable to update to 0.3.4 via the package manager. I believe this may be due to the packaging moving from @donaldpipowitch to @Glavin001 . You may need to update the repo information in package.json to point to the new URL.

Updating to “[email protected]” failed. Less…
Unable to download https://www.atom.io/api/packages/atom-beautify/versions/0.3.4/tarball: 400 Bad Request Repository inaccessible

Support upwards recursive .jsbeautifyrc fallback

Instead of finding the closest .jsbeautifyrc file and applying it, we should instead find all .jsbeautifyrc files upwards from the starting directory. Thus, you can apply Project Specific as a fallback for directory specific, and so forth.

save on beautify refuses to fire unless manually done first

Issue:
saving on beautify is on yet when I save it does not beautify unless I used ctrl-alt-b first. This however prevents whitespace from ensuring a blank line at the end of the file.

Installed Packages:

/Users/.../.atom/packages (19)
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
└── [email protected]

I'm also using OSX Yosemite. Not sure if that matters but this started happening in last 24 hours and I went through my install history and can't figure out what could have caused it.

Is there any info I could provide?

Google Analytics

  • Track most popular languages beautified (so we know what to prioritize development on)

Atom commands for specific language

See https://github.com/taronfoxworth/atom-beautifier/blob/master/lib/beautifier.coffee#L99-L102

  atom.workspaceView.command "beautifier", -> convert()
  atom.workspaceView.command "beautifier:js", -> convertJs()
  atom.workspaceView.command "beautifier:html", -> convertHTML()
  atom.workspaceView.command "beautifier:css", -> convertCSS()

Use case: highlight a specific area of code that is a different language than the overall file's grammar type. Now apply the desired, correct, beautification.

Message/Loading Popup/Modal

Currently there is no way to display a message to the user, such as errors or warnings or deprecation notices (see #40). Let's put a little overlay on the top for displaying such information.

Beautify not yet created files.

Uncaught TypeError: Arguments to path.resolve must be strings

This occurs when beautifying on a file in a new window, because the editorFilePath is undefined.

var editedFilePath = editor.getPath();
// => undefined

This is when the file is not yet created.

  • Verify that the path is being passed a valid string

Ignore jsbeautify when editing .jsbeautifyrc in place

When editing .jsbeautifyrc, and if it's in the path to be evaluated, we get an error from the config-chain module, which is right, because the invalid syntax (in the middle of editing/saving) causes the json file failing to load.

Needs to be fixed.

I'll provide a fix for this later on.

ReactJS

Would it be possible to add support for ReactJS JSX files?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.